1

我有一个我正在尝试修补的可执行文件。可执行文件使用 XOR 加密存储字符串。我使用 XORSearch 来查找我正在寻找的字符串。它返回:

找到 XOR FD 位置 3E22:

现在我想改变那个字符串。我假设“FD”是异或键,所以如果我用 FD 对新字符串进行异或,我应该能够修补可执行文件。问题是:我在可执行文件中找不到该位置。我不确定位置 3E22 是什么意思。

请帮忙!

4

2 回答 2

1

位置 3E22 是十六进制的,并且确实意味着从头开始的字节 15906。

于 2011-03-08T08:55:27.810 回答
0

这取决于您的代码是否可重新定位。通常优秀的程序员会编写可重定位代码,因为它可以节省一些空间,例如在使用分支条件时。您想要的是首先重新定位代码,然后在该位置修补代码。但是这样的异或码很容易被统计分析破解。你有钥匙吗?

于 2011-03-07T22:39:48.260 回答