前言

该文章主要是讲解了常见的应用程序黑客技术基本概念,包括消息钩取,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;代码注入

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

最新文章

  1. Ionic学习笔记三 Gulp在ionic中的使用
  2. getWinSystemIcon
  3. 20145212 《Java程序设计》第9周学习总结
  4. Linux snmp
  5. nyoj-71
  6. ZJOI2015 一试。
  7. Qt 自定义 滚动条 样式
  8. .net学习笔记----利用System.Drawing.Image类进行图片相关操作
  9. 1.0 基础、标示符、常量、数据类型(enum 枚举,struct 结构体)、操作符、循环、数组
  10. 再谈AbstractQueuedSynchronizer:基于AbstractQueuedSynchronizer的并发类实现
  11. Spring3.x企业应用开发实战-Spring+Hibernat架构分析
  12. android 权限库EasyPermissions
  13. winrar目录穿越漏洞
  14. spark2.1源码分析2:从SparkPi分析一个job的执行
  15. python object对象
  16. C51 头文件中的 extern
  17. Dubbo安装及其实战1
  18. maven 错误:读取 xxx.jar 时出错;invalid LOC header (bad signature) 1 错误
  19. The Properties of Posterior of Topic Model
  20. 忽略UserInterfaceState.xcuserstate

热门文章

  1. at org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmplImpl.renderNoFlush(BackupMasterStatusTm
  2. sublime3使用技巧
  3. ELK节点安装
  4. IQueryable、IEnumberable 、IList与List区别
  5. Java内存模型(JMM)那些事
  6. Postman如何测试Webservice接口?
  7. Java Interview Questions Summary
  8. 一个汇编小demo
  9. lambda表达式在解决java后台分组排序时的应用
  10. Java JDK 1.5 1.6 1.7 新特性整理