替换可执行文件中的异或字符串 (x86)
我有一个正在尝试修补的可执行文件。可执行文件使用 XOR 加密存储字符串。我使用 XORSearch 来查找我正在寻找的字符串。它返回:
找到 XOR FD 位置 3E22:
现在我想更改该字符串。我假设“FD”是异或键,所以如果我用 FD 对新字符串进行异或,我应该能够修补可执行文件。问题是:我在可执行文件中找不到该位置。我不确定位置 3E22 是什么意思。
请帮忙!
I have an executable that I am trying to patch. The executable is storing strings using XOR encryption. I used XORSearch to find the string im looking for. It returned:
Found XOR FD Position 3E22:
Now I'd like to change that string. I'm assuming "FD" is the xor key so if I xor'ed the new string with FD I should be able to patch the executable. Problem is: I cannot find the place in the executable. I'm not sure what Position 3E22 means.
Please help!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
位置 3E22 是十六进制的,表示从头开始的字节 15906。
Position 3E22 is hexadecimal and does mean Byte 15906 from the beginning.
这取决于您的代码是否可重定位。通常,优秀的程序员会编写可重定位代码,因为它可以节省一些空间,例如在使用分支条件时。你想要的是先重新定位代码,然后在该位置修补代码。但这样的异或代码可以通过统计分析轻松破解。你有钥匙吗?
it depends if ur code is relocatble or not. usually good programers make reloctable code because it save some space for example when using branch conditions. what u want is to relocate the code first and then patch code at that position. but such an xor code can be easily break with a statistical analyse. do u have the key?