使用C#进行代码注入

时间:2020-03-05 18:42:24  来源:igfitidea点击:

可以使用Windows钩子或者其他方法通过c#进行代码注入吗?我已经看到了很多有关代码注入的内容,但是所有这些都是在C / C ++中完成的。我不懂这两种语言,翻译时很难。有人对如何执行此操作有任何想法吗?

解决方案

回答

凯文
有可能的。我们可以使用托管C ++通过window hook proc创建库。我们需要做的就是使用标准WinAPI(SetWindowsHookEx等)将此钩子注入到某些应用程序中。在此挂钩内,我们可以调用System :: AppDomain :: CurrentDomain-> Load方法将程序集加载到目标应用程序的AppDomain中。然后,我们可以使用反射调用程序集中定义的方法。例如,Snoop使用此方法。

回答

Mike Stall有此示例,该示例使用CreateRemoteThread。它的优点是不需要任何C ++。