OD工具之动态逆向分析技术实例分析
卧槽垃圾高级软件工程真是烦人还是记录一下吧那么简单的几行没有手册搞半天都无力吐槽了
vscode等编写cmp.c
在vscode等编辑器中编写cmp.c文件:
#include<stdio.h>
int main()
{
int x=6;
int y=6;
if(x<y)
{
printf("x<y");
}
else
{
printf("x>=y");
}
return 0;
}
运行cmp.c程序得到cmp.exe文件!动态逆向分析技术分析的是.exe文件哇!
原本的运行结果是x>=y!
OD工具打开cmp.exe
点击左上角点击open然后选中刚刚生成的cmp.exe文件:
打开后如下:
在数据窗口即左下方面板右键选择search for——all referenced strings:
点击x<y或者x>=y:
即可跳转到如下位置:
在上方反汇编窗口选中指定指令,然后右键选择follow in dump —— selection:
即可在数据窗口看到其对应的十六进制地址:
右键下方数据窗口的地址然后选中assemble:
其跳出如下内容:
将其中的内容转换为nop:
更改后如下:
原本该exe打开后应该输出x>=y:
经过上述操作后点击f9可得到x<y:
注意:存储后不兼容的!
所以建议直接f9查看结果!