登录 注册
当前位置:主页 > 资源下载 > 10 > DetoursDemo.zip下载

DetoursDemo.zip下载

  • 更新:2024-10-21 11:05:07
  • 大小:34.51MB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:C++ - 后端
  • 格式:ZIP

资源介绍

Detours 是一个在x86平台上截获任意Win32函数调用的工具库。中断代码可以在运行时动态加载。Detours使用一个无条件转移指令来替换目标函数的最初几 条指令,将控制流转移到一个用户提供的截获函数。 具体用途是:  拦截WIN32 API调用,将其引导到自己的子程序,从而实现WIN32 API的定制。  为一个已在运行的进程创建一新线程,装入自己的代码并运行。  Detours的原理  1. WIN32进程的内存管理  总所周知,WINDOWS NT实现了虚拟存储器,每一WIN32进程拥有4GB的虚存空间, 关于WIN32 进程的虚存结构及其操作的具体细节请参阅WIN32 API手册, 以下仅指出与Detours相关的几点:  (1) 进程要执行的指令也放在虚存空间中  (2) 可以使用QueryProtectEx函数把存放指令的页面的权限更改为可读可写可执行,再改写其内容,从而修改正在运行的程序  (3) 可以使用VirtualAllocEx从一个进程为另一正运行的进程分配虚存,再使用 QueryProtectEx函数把页面的权限更改为可读可写可执行,并把要执行的指令以二进制机器码的形式写入,从而为一个正在运行的进程注入任意的代码