misc/based
This commit is contained in:
Executable
+40
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i python3 -p "python3.withPackages (ppkgs: with ppkgs; [ pwntools ])"
|
||||
|
||||
from pwn import *
|
||||
|
||||
ADDR, PORT, *_ = "fickle-tempest.picoctf.net 61388".split()
|
||||
|
||||
def recv_question(r: remote) -> list[str]:
|
||||
r.recvuntil(b'the')
|
||||
xs = r.recvuntil(b'as a word.').decode().removesuffix('as a word.').strip().split(' ')
|
||||
return xs
|
||||
|
||||
def send_answer(r: remote, answer: str):
|
||||
r.recvuntil(b'Input:\n')
|
||||
r.sendline(answer.encode())
|
||||
|
||||
def main():
|
||||
r = remote(ADDR, PORT)
|
||||
|
||||
binary = recv_question(r)
|
||||
answer = ''.join(chr(int(c, 2)) for c in binary)
|
||||
print(f"{binary} -> {answer}")
|
||||
send_answer(r, answer)
|
||||
|
||||
octals = recv_question(r)
|
||||
answer = ''.join(chr(int(c[1:], 8)) for c in octals)
|
||||
print(f"{octals} -> {answer}")
|
||||
send_answer(r, answer)
|
||||
|
||||
hx = recv_question(r)[0]
|
||||
hx_chunks = [hx[i:i+2] for i in range(0,len(hx),2)]
|
||||
answer = ''.join(chr(int(c, 16)) for c in hx_chunks)
|
||||
print(f"{hx} -> {answer}")
|
||||
send_answer(r, answer)
|
||||
|
||||
print(r.recvall().decode())
|
||||
r.close()
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user