Код решения:
# solve.py
from pwn import *
def main():
KEY_LEN = 50000
r = remote("mercury.picoctf.net", 20266)
# nc mercury.picoctf.net 20266
r.recvuntil(b"flag!\n")
c = r.recvline().decode()
print(f'Encrypted flag: ' + c)
c_len = (len(c) - 1) // 2
print(f"Key length: ", c_len)
temp = b'A'*(KEY_LEN-c_len)
r.sendlineafter(b"encrypt? ", temp)
r.sendlineafter(b"encrypt? ", bytes.fromhex(c))
r.recvline()
flag = r.recvline()
print(f'\n\n\n\n')
flag = flag.decode()
print(f"-----BEGIN PICOCTF EASY PEASY FLAG-----\n\n\n")
print(b"picoCTF{" + bytes.fromhex(flag) + b"}")
print(f"\n\n\n-----END PICOCTF EASY PEASY FLAG-----\n\n\n\n\n\n\n")
if __name__ == "__main__":
main()
'''
[+] Opening connection to mercury.picoctf.net on port 20266: Done
Encrypted flag: 5b1e564b6e415c0e394e0401384b08553a4e5c597b6d4a5c5a684d50013d6e4b
Key length: 32
-----BEGIN PICOCTF EASY PEASY FLAG-----
b'picoCTF{99072996e6f7d397f6ea0128b4517c23}'
-----END PICOCTF EASY PEASY FLAG-----
[*] Closed connection to mercury.picoctf.net port 20266
'''
Видео выполнения: