epx中设置断掉调试
以前总听师傅们说,做pwn题,多调试,多调试。
师傅都说用gdb,但是我刚接触linux程序调试的时候用的是pwndbg,后来就用顺手了。但是调试一些简单程序还好,直接用pwndbg打开。但是这年头简单的题目可不常见了。
我却一直没学会怎么调试,直到昨天晚上一位师傅帮助我弄好了环境,我才发现,原来调试是这么好用。
命令就是想让在exp中断的地方,加上这么一句。
gdb.attach(p)
老实说,以前我也设置过,但是看见是gdb,而且一断下来出现个新的终端,让直接输入命令,无奈不懂该输入什么,所以就一直没用。昨天看到一个师傅断下来,出现的竟然是pwndbg 的页面。惊讶.jpg
师傅说修改一下gdb的配置就行了,于是就有了下面这些命令。
gedit ./.gdbinit //打开gdb的配置文件
把里面的内容修改成
# 此处为pwndbg的gdbinit.py的目录 source /home/Thriumph/pwndbg/gdbinit.py source /home/Thriumph/pwndbg/pwndbg.py source /home/Thriumph/pwndbg/angelheap/gdbinit.py define kool-run python import angelheap angelheap.init_angelheap() end end
注意一下,里面的路径自己要设置成自己的pwndbg的路径,这样就可以调试了。。。
想想自己以前不知道context.log_level = 'debug'就是print p.recv。。。各种用手下断点。。。这下好了,可以直接用pwndbg从exp的一般开始调试程序了。