我在Windows下使用OLLdbg练习逆转技巧。
有一个交互式窗口要求您输入,我们说“序列号”。我的问题是当用户在窗口上操作时,很难在调试器窗口中找到相关的数据流。例如,如果单击“F9”,我们可以查看指令流程;但是当在窗口上输入时,我不知道哪些指令已被执行。
我的目标是找到一些跳转指令并进行更改,以便我可以绕过正确的输入要求。我认为该指令应该与arg#相关的指令非常接近,并且与TEST命令有关。
寻找提示或技巧。谢谢。
答案 0 :(得分:1)
您可以做的一件事是在文本字段中键入内容,然后使用Cheat Engine等应用程序找出存储器中存储这些字符的位置。然后,您可以在ollydbg中的第一个字符的地址上放置一个内存(访问时)断点。然后按下验证序列的按钮。当指令访问内存的这一部分时,它将会中断。你在验证字符串的代码的一部分里面。现在,您必须尝试了解代码正在执行哪些操作才能找到要更改的指令。
根据应用程序的安全程度,这将起作用。使用更安全的应用程序,这很可能无法正常工作。当您刚开始进行逆向工程时,我建议您找到一些易于破解的应用程序,并以更安全的应用程序的方式工作。您可以找到许多这些“裂缝”的网站是crackmes.de。我也可以建议lene151的教程here。我在逆向工程中看到的一些最好的教程。