1
我喜欢将DLL注入进程,因为我可以更改程序的某些值。是否可以从外部进程注入和执行应用程序?
dll的唯一缺点是它们不是非常便于携带,并且使它们便携式消耗大量代码。
我只是想知道是否可以注入存储在资源中的应用程序(对一个进程),然后执行它?
如果是这样,哪些代码部分可能会不同于dll的注入?
我喜欢将DLL注入进程,因为我可以更改程序的某些值。是否可以从外部进程注入和执行应用程序?
dll的唯一缺点是它们不是非常便于携带,并且使它们便携式消耗大量代码。
我只是想知道是否可以注入存储在资源中的应用程序(对一个进程),然后执行它?
如果是这样,哪些代码部分可能会不同于dll的注入?
您的问题没有标记为“Windows”,但从措辞我仍然假定您参考Windows。
考虑到必要的访问权限,有可能注入的可执行文件到另一个进程,在Cygwin中的fork
实现是一个概念证明。 Windows不支持类似fork
的东西,至少在公开API中不公开。 Cygwin通过创建一个新进程并将其自己的进程注入另一个进程(包括所有数据)来实现它。而是从资源中读取,然后注入,这几乎是一回事。
其中一个差异(和困难)可能是图像库,它在Win32下通常是相同的。对于一个DLL来说,它是一个通常被重新组合的东西,而不是一个可执行的东西。另一方面,如果您想将代码添加到已存在的进程代码中,则您所需的地址可能不是免费的。