目录
动调步骤
以题为例
no-strings-attached
ida动调
先查看一下基础信息,32位elf文件,用ida查看一下
在合适的地方,F2下断点
将ida根目录下dbgsrv文件中的linux_server、linux_server64连同需要调试的文件放入虚拟机中(目录尽量简单,后面会用到)
根据要调试的是64位还是32位的选择linux_server还是linux_server64,第一次运行要输入(不管是32位文件还是64位,第一次运行都要输,且要分开输入)
chmod +x linux_server
出现上面的界面则运行成功了
回到ida界面进行配置
F9运行
每个文件都要授权
(pwd查文件路径、id add查ip)
gdb动调
用的kali,ubuntu暂时没弄好
先安装gdb,更新一下
sudo apt-get update
安装
sudo apt-get install gdb
测试
gdb -h
开始调试
gdb 554e0986d6db4c19b56cfdb22f13c834
下断点
b decrypt
执行到断点
r
单步执行decrypt
n
显示寄存器
i r
查看eax的值
x/6sw $eax
6:显示6行数据
s:字符串形式
w:word(4字节)形式
ctfshow_武穆遗书
先查壳发现有upx壳,脱壳
用ida看一下代码
因为无法处理反调试代码,所以用动态调试来获取flag
比较处F2下断点
附加程序,先运行起来,再按照图上所示Debugger->Attach the process
点击ok,EIP相当于程序执行到这里
输入数值,F9跳转到下断点处
输入地址跳转