我有一个程序,它加载库test.dll,这个库使用ws2_32.dll来创建套接字和发送/接收数据包。我可以注入我的C++库到这个过程,但不知道如何将函数“socket”,“accept”等函数的test.dll调用例如。有人可以帮我解决这个问题吗? 谢谢!拦截套接字函数(windows)
2
A
回答
2
您需要钩住accept函数。 您可以使用库例如MS Detours(早期版本是免费的,你可以使用版本1.5,只是谷歌它)。 呼叫
DWORD a=DetourFindFunction("Ws2_32.dll","accept")
它会给你的指针接受功能。 然后你可以绕道它通过呼吁
DetourFunction(a,&Yourfunction)
。
DetourFunction将新指针返回为“接受”,因此请确保在“YourFunction”的末尾调用它以确保程序不会崩溃。
或者,您可以使用Inlineassembler自己重定向函数。当然这要复杂得多。
+1
您不需要汇编器来重定向DLL函数,您可以直接修改PE Imports表。 –
相关问题
- 1. 挂接windows API函数来拦截dll加载(仅限Windows)
- 2. 拦截全局函数
- 3. 拦截JUnit声明函数
- 4. RenderScript拦截函数调用
- 5. 拦截javascript中的函数
- 6. 使用java的“拦截”闪存套接字
- 7. 如何拦截套接字级别的Tomcat请求?
- 8. 用于拦截/修改网络套接字的Chrome扩展API
- 9. Windows Mobile拦截通知
- 10. 拦截器不拦截
- 11. java拦截器不拦截
- 12. 拦截调用DOM API函数
- 13. 覆盖/拦截所有jQuery函数
- 14. 如何拦截构造函数
- 15. 用bytebuddy拦截错误构造函数
- 16. Spring.NET&构造函数拦截器
- 17. 用谷歌guice拦截构造函数
- 18. 使用Selenium拦截Javascript函数调用
- 19. 拦截构造函数中调用JavaScript
- 20. 识别和拦截函数调用
- 21. UITextView拦截邮件链接
- 22. 拦截Android GMail SSL连接
- 23. Java mysql拦截连接
- 24. Microsoft Unity接口拦截和构造函数的区别注入
- 25. 我可以拦截直接调用的函数吗?
- 26. 拦截由应用程序进行的套接字调用并将其映射到自定义套接字
- 27. LD_PRELOAD套接字函数java
- 28. Windows Azure套接字
- 29. 打开套接字,发送数据,关闭套接字=截断数据
- 30. android上的拦截拦截器
请说明你自己到底做了些什么以及你收到了哪些错误。 – vyegorov