所以我花了最近两天的时间试图在PE文件中注入一个新的部分,但不幸的是,没有太多运气。我可以解组,然后重新组装整个PE,但是当我尝试注入一个新的部分时,文件就会损坏。一旦我尝试启动该文件,我就会收到无用的错误消息“此程序无法运行。”。我想尝试自己解决它,但我完全陷入困境。这是我的代码,有几个临时hacks用于调试目的,我将在以后删除。
我的代码:http://pastebin.com/ZfZqUWUG
对于相当大的文件感到抱歉,但问题是我不知道我做错了什么。任何帮助都是适当的。
更新
我的目标是编写一个允许我保护exe文件的打包器。我有一个构建器,它对所有现有部分进行加密,添加一个新的可执行部分,并将入口点更改为该部分。新部分中的代码将解密其他部分,并跳转到原始入口点。
我可以在PE资源管理器中看到新的.inj部分,它还会显示数据“Test”。