在Windows上挂起来自用户空间的系统调用

时间:2008-10-06 05:31:16

标签: hook code-injection patch

我正在修补connect()以重定向网络流量作为库的一部分(NetHooker),这很有效,但它依赖于ws2_32.dll保持不变,如果系统调用是直接使用。所以我想知道的是,如果有一种方法可以在没有驱动程序的情况下捕获系统调用。有人知道这是否可行?

3 个答案:

答案 0 :(得分:1)

科迪,

您可能希望考虑编写分层服务提供程序而不是系统调用挂钩。

http://www.microsoft.com/msj/0599/LayeredService/LayeredService.aspx

答案 1 :(得分:0)

科迪,也许你可以看看http://research.microsoft.com/en-us/projects/detours/

另外,我写了一些代码,如果dll导出的名称会通过修补内存中的图像将其重定向到另一个函数指针,请告诉我你是否需要代码。

答案 2 :(得分:0)

Detours库外,您还可以查看easyhook库。两个库都设计用于在内存中修补图像。