0

如果有任何可用于注入进程自己的 C/C++ dll 并从入口点开始的解决方案,我需要挂钩进程套接字发送函数并将我自己的代码粘贴到那里。它在Linux上可用吗?

谢谢!

4

2 回答 2

5

典型的方法是LD_PRELOAD在启动程序之前设置环境变量。参见例如tsocks。请注意,尽管出于安全原因,某些程序会禁用此功能(它可以窥探密码等),例如 gnupg 阻止LD_PRELOAD工作。

如果你想注入一个正在运行的程序,那就更难了。它可以通过ptrace(例如使用 gdb 附加并调用 dlopen)来完成。但它是不可靠的,因为你不知道附加时程序是什么状态。

于 2012-02-04T13:05:04.263 回答
0

我制作了pyinjector,这是一个工具,您可以使用该工具将正在运行的进程与共享库一起注入。

要安装,只需运行pip install pyinjector.

用法:inject <pid> <dll_path>

于 2020-08-02T07:27:27.813 回答