DetourFunction \DetourRemove 和DetourAttach \DetourDetach

因为才接触Detours Hook,所以按照网上的去官网下了一个DetoursExpress30.msi 下载的地方也只有这一个可供下载。

(后来查资料才知道还有一个收费版的detour professional 3.0,听说蛮贵的,去官网也没有找到)

http://download.csdn.net/download/staver102/7648875这个是别人自己改写的专业版的 ,我还没有用过。

之前看了好多的Detour的例子 提到了DetourFunction \DetourRemove 可自己的代码运用时提示该函数没有定义,就在想难道是我的包到的不对,还是我少了什么东西,在网上查了半天也没有相关的解释,也有人发帖,可是大多成了空帖,有问无答。

原来detours2.1后里面有的函数就发生了改变

设置HOOK 由DetourFunction 改成了DetourAttach

删除HOOK由DetourRemove 改成了DetourDetach

就这个问题纠结了好久。

时间: 2024-10-12 09:12:26

DetourFunction \DetourRemove 和DetourAttach \DetourDetach的相关文章

运用Detours库hook API(原理是改写函数的头5个字节)

一.Detours库的来历及下载: Detours库类似于WTL的来历,是由Galen Hunt and Doug Brubacher自己开发出来,于99年7月发表在一篇名为<Detours: Binary Interception of Win32 Functions.>的论文中.基本原理是改写函数的头5个字节(因为一般函数开头都是保存堆栈环境的三条指令共5个字节:8B FF 55 8B EC)为一条跳转指令,直接跳转到自己的函数开头,从而实现API拦截的.后来得到MS的支持并在其网站上提供

Detours简介

HOOK api以前的做法是修改PE文件输入表,使其加载自定义的DLL去挂载对应的HOOK. 具体实现方式是在调用原API函数前,将其前8个字节修改为跳转到自己定义的函数地址,执行完函数,又将原API前8个字节恢复,再调用原API,到达对API劫持的功能. 在每次调用过程中,先修改前8字节,跳转到自定义函数,执行完再改回前8字节,执行原API,一次调用,多次修改. 而Dotours则是微软开发的一个函数库,专门用于捕获系统API.在使用之前,必须做以下相关准备工作: 1.下载dotours,下载

黑客技术之移花接木(劫持)

1.这里所说的移花接木分三个级别:@1对自己写的函数使用:@2对别的程序的函数使用:@3对操作系统程序使用. 简单地说就是让改变程序的走向,本来调用的函数不调用了,调用你写的函数,用你的花去接别的程序的木. 2.这里采用的是微软亚洲研究院开发的劫持技术detours,这是一个封装好的库,有源代码,原理是使用函数指针改变函数行为. 3.移花接木的技术就是调用它的API结合自己实际应用. 4.使用步骤: @1安装detours, @2构建库文件,使用Makefile进行编译. @3包含头文件和库文件

Detour的使用

最近有用到detour,属于一种api拦截的方式了,是微软研究院出的一个库(可以网上下载,是源码形式,有makefile,可用vs的命令行工具来编译出来).可以替换掉我们关心的api,进入到我们的处理中. 当然,api拦截,首先需要借助Dll注入,才能够去影响你想改变的进程,这可通过上篇文章中全局hook来实现:可在hookProc回调中,进行detour,然后在DLL的proc_detach中undetour就可以了. 其实detour的使用倒是很简单了.直接几个接口就可以了,具体看下面代码.

Microsoft Detours 2.1简介

http://blog.163.com/qcb_163/blog/static/9545466420117851038971/ Microsoft Detours 2.1简介 2011-08-0817:10:38| 分类: VC编程 | 标签: |字号大中小 订阅 一.简介 <Windows高级调试>第一章中提到了一个基于Microsoft Detours库的内存泄露检查工具LeakDiag.本文对这个库进行一些介绍. 一句话来说,Detours是一个用来在二进制级别上对程序中的函数(Func

Detours简介 (拦截x86机器上的任意的win32 API函数)

Detours 当然是用detours,微软明显高腾讯一筹,同上,至今没失败过.写这种HOOK一定要再写个测试程序,不要直接HOOK你的目的程序,例如QQ,因为这样不方面更灵活的测试.说明一下:Detours是微软开发的一个函数库(源代码可在http://research.microsoft.com/sn/detours 免费获得)用于修改运行中的程序在内存中的影像,从而即使没有源代码也能改变程序的行为.具体用途是:拦截WIN32 API调用,将其引导到自己的子程序,从而实现WIN32 API的

利用detours实现API劫持

一直想玩黑客技术,今天正好找到一个detours的库,这是微软的出品的用来搞这类活动的库,下载下来,用了一下,把messagebox给劫持了,感觉各种好happy,23333333333 这里需要特别注意的一点是,一定要在release模式下使用,否则是显示不出效果的. // ====================== [API劫持]=========================== // @ author : zhyh2010 // @ date : 20150530 // @ vers

劫持系统进程禁止创建文件

body { font-family: 微软雅黑,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5; } html, body { } h1 { font-size:1.5em; font-weight:bold; } h2 { font-size:1.4em; font-weight:bold; } h3 { fon

【C/C++】劫持技术

劫持 劫持的原理就是把目标函数的指针的指向修改为自定义函数的地址. 函数是放在内存中的代码区,所以劫持与代码区密切相关. 实现劫持需要使用detours. detours detours是微软亚洲研究院出口的信息安全产品,主要用于劫持.这个工具使用C语言实现,所以是跨平台的. detours根据函数指针改变函数的行为,可以拦截任何函数,即使操作系统函数. detours下载地址: 下载地址1:http://research.microsoft.com/en-us/downloads/d36340