SHARE
TWEET

Untitled

a guest Dec 8th, 2014 547 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/env python
  2. import socket
  3.  
  4. decoder_table = {
  5.     '100010100': '0',
  6.     '101001000': '1',
  7.     '101000100': '2',
  8.     '101000010': '3',
  9.     '100101000': '4',
  10.     '100100100': '5',
  11.     '100100010': '6',
  12.     '101010000': '7',
  13.     '100010010': '8',
  14.     '100001010': '9',
  15.     '110101000': 'A',
  16.     '110100100': 'B',
  17.     '110100010': 'C',
  18.     '110010100': 'D',
  19.     '110010010': 'E',
  20.     '110001010': 'F',
  21.     '101101000': 'G',
  22.     '101100100': 'H',
  23.     '101100010': 'I',
  24.     '100110100': 'J',
  25.     '100011010': 'K',
  26.     '101011000': 'L',
  27.     '101001100': 'M',
  28.     '101000110': 'N',
  29.     '100101100': 'O',
  30.     '100010110': 'P',
  31.     '110110100': 'Q',
  32.     '110110010': 'R',
  33.     '110101100': 'S',
  34.     '110100110': 'T',
  35.     '110010110': 'U',
  36.     '110011010': 'V',
  37.     '101101100': 'W',
  38.     '101100110': 'X',
  39.     '100110110': 'Y',
  40.     '100111010': 'Z',
  41.     '100101110': '-',
  42.     '111010100': '.',
  43.     '111010010': ' ',
  44.     '100100110': '$',
  45.     '101101110': '/',
  46.     '101110110': '+',
  47.     '110101110': '%',
  48.     '101011110': '*',
  49.     '111001010': '$',
  50.     '111011010': '%',
  51.     '100110010': '+',
  52.     '111010110': '/',
  53. }
  54.  
  55. s = socket.socket()
  56. s.connect(('adctf2014.katsudon.org', 43010))
  57. while True:
  58.     data = s.recv(4096).decode('utf-8')
  59.     while data[-1] != '\n':
  60.         data += s.recv(4096).decode("utf-8")
  61.     data = data.strip()
  62.     print(data)
  63.     if "flag" in data:
  64.         break
  65.     data_map = {
  66.         ord(' '): '0',
  67.         ord('▐'): '01',
  68.         ord('▌'): '10',
  69.         ord('█'): '11',
  70.  
  71.     }
  72.     out = data.translate(data_map)[:14*9]
  73.     print(out)
  74.     res = []
  75.     for i in range(0, len(out), 9):
  76.         res.append(decoder_table[out[i:i+9]])
  77.     res = ''.join(res)
  78.     print(res)
  79.     s.sendall(res.encode("ascii")[1:11])
RAW Paste Data
Top