zoukankan      html  css  js  c++  java
  • 0X01应用程序黑客技术

    前言

    该文章主要是讲解了常见的应用程序黑客技术基本概念,包括消息钩取,API钩取,DLL注入,代码注入

    天象独行

      0X01;消息钩取

      原理:在我们通过键盘,鼠标等输入信息过程中,Windows会通过钩链(HookChain)来处理这些信息。所谓的钩链本质上是一个列表,包含处理消息的一系列函数的指针列表。这么来看,所谓的消息钩取本质上是将恶意进程的指针注入到钩链当中。导致钩链在处理信息的过程中执行其他操作。比如:键盘记录器。

      利用方法:文件user32.dll当中的SetWindowsHookExA()方法。

      注释:

      1;user32.dll是Windows用户界面相关应用程序接口,用于包括Windows处理,基本用户界面等特性,如创建窗口和发送消息。

      2;钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。

      0X02;API钩取

      原理:在操作系统当中存在一个调试进程。他的作用是在程序特定的命令位置设定断点并且注册特定的方法。这个时候,当程序运行到断点位置是会执行之前注册的方法(回调)。那么,API钩取就是在回调方法中注入可以代码。

      0X03;DLL注入

      什么是DLL???

      所谓的DLL即动态链接库,可以认为本质是一个共享的函数方法文件,以便不同程序来共享调用运行。

      原理:利用特定的动态链接库DLL插入特定的应用程序。

      常见DLL注入的方法有:

      1;在注册表特定位置输入指定DLL名称,这个时候在应用程序调用user32.dll文件是,指定的DLL文件就会被加载内存当中。

      2;利用钩取函数来DLL注入。

      3;为运行中的应用程序创建远程线程以插入DLL。

      注释:

    https://www.cnblogs.com/chechen/p/8676226.html DLL动态链接库

      0X04;代码注入

      原理:为运行中的程序创建远程线程以插入恶意代码。

  • 相关阅读:
    Docker学习-安装,配置,运行
    Docker学习-从无知到有知的学习过程
    学习记录-java基础部分(一)
    对get post等http请求方式的理解
    Mac和window实现双向数据传输
    git pull时 git cannot lock ref XXXXXX (unable to update local ref)错误解决方案
    三年内我的计划和方向
    关于云服务器和云部署的实操(新手级别入门)
    win7蓝屏死机0x0000003B错误蓝屏故障解决
    JAVA代码:生成一个集合,自定义大小,100以内的随机整数
  • 原文地址:https://www.cnblogs.com/aaron456-rgv/p/12120894.html
Copyright © 2011-2022 走看看