是否存在特定的空字符或字节序列,如果在文件的FRONT中添加,则不会损坏可执行文件?我尝试添加NUL(00十六进制),但每次都会破坏可执行文件。是否有一些字节码用于NOP(无操作)或类似的东西?
长话短说,我想弄乱一个“黑客”,修改内存中的值& process + fixed offset。推动内存堆栈会(或者我认为)阻止它工作。
答案 0 :(得分:2)
不,Windows可执行文件使用的PE文件格式具有非常特定的标头。有关详细信息,请参阅http://en.wikipedia.org/wiki/Portable_Executable。
您可以尝试使用ASLR使您的代码更能抵抗内存中的修补。
答案 1 :(得分:1)
您必须将其完全解析为不同的部分和细分,修改您要查找的部分,但您无法在任何代码段之前插入代码: 你最好有一个先执行的段,然后跳转到旧的起始段。
最后,您将不得不重新创建一个新的完整可执行文件。