使用GDB附加调试64位程序
pwntools开发脚本时如何调试:
1、使用proc.pidof§函数先将被测函数的PID打印出来
2、 用GDB Attach上去调试即可
本次实验的代码如下:
使用checksec指令来看看
没有nx保护,没有pie保护,地址不随机化,没有栈执行的保护,没有stack保护,64位的程序
使用objdump指令看看汇编语句
典型的64位可以看到rbp什么的
看到了expliot函数,这个是我们要利用的函数
然后开启gdb,老规矩,pattern create 200
r
现在开始写exp
代码如下
输出pid主要是为了下一步附加进程分析用的,p64后面的地址是exploit的函数入口地址
getshell成功
调试的话要在sendline之前暂停一下,把gdb附加进去
暂停成功
附加成功,暂停到了cmp指令