记录一次ELF文件在linux下的调试,以*CTF2022的 simplefs为例。
我们已经知道是ELF文件,并且确定到加密函数
v4的值显得尤为重要,v4经过一个函数加密而来。
我们进入
我们难以分析,使用IDA动态调试
启动我们的虚拟机一定要是Linux的,
确保这个2个文件在虚拟机,这2个文件在IDA目录下的dbgsrv中,直接复制到虚拟机即可
现在IDA下入一个断点
在虚拟机中
chmod a+x ./linux_serverx64 改变文件属性,然后通过命令 ./linux_serverx64运行该程序
输入
chmod a+x ./linux_serverx64
然后输入
./linux_serverx64
然后启动另一个终端
输入
ifconfig
获取虚拟机IP
接着
在IDA填写一些信息
由于我把文件放在桌面,
故这三项这样填
参数我们一般不填,但这次题目要求了
故我们这样填,IP把获取的填上去,端口默认填这个23946
至此动态调试的准备工作做完,直接拿到v4的值。
关于这道题的详细部分,参见大佬的wp
Write-up/星CTF of b3f0re .md at main · b3f0re-team/Write-up · GitHub