本文主要是介绍IDA动态调试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
动态调试
这里我使用测试程序是buuctf逆向题目中的第一题easyre.exe
将其拖进IDA中打开
在调试前要选择调试器,在菜单栏找到调试器,如下选择之后点击确定。
在启动调试前下断点
下好断电到调试器里点击启动进程
会有警告信息,选择是即可
从汇编代码中找到两个变量
查他们的地址
在Hex View窗口中通过快捷键G
快速定位到这两个变量的位置,查看他们的值大小
a的值是0,b的值是1,其实也可以通过调试器里的局部变量窗口查看变量的值
这里也能看到局部变量的值
在反汇编窗口按下快捷键F5,将汇编代码转换为伪代码
启动调试
程序停在了scanf语句这一行,F8
,单步步过,执行scanf语句,键盘输入,这里我们输入两个相同的数字,用空格隔开,按下回车
发现变量值a,b都改变了,变成了7B,转成十进制就是123
接着F8,单步步过,经过判断语句,两个变量的值相同,条件为真输出
然后程序结束。
这篇关于IDA动态调试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!