Alex CTF Writeup
Alex CTFにも参戦してました。 解いた問題もCTFらしくはないですが、一応Writeupを
[Scripting 100] SC1: Math bot
アクセスするとひたすら計算問題を出されるのでひたすらpythonで解かせる 500問解くとflagが落ちてくる。適当にスクリプト組んだのでこれだけ上げとく.
import socket,telnetlib import math # common funcs --- def sock(remoteip, remoteport): s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((remoteip,remoteport)) return s, s.makefile('rw',bufsize=0) def read_until(f,delim='\n'): data = '' while not data.endswith(delim): data+= f.read(1) return data def ans(): r= '' # Questionの文字まで読み込む while "Question" not in r: r += f.read(1) print(r) r = '' # Question番号まで読み込む while "\n" not in r: r += f.read(1) print(r) r = '' first = '' second = '' r = read_until(f) print(r) # 問題を読み込む lis = r.split(' ') first = long(lis[0]) ope = lis[1] second = long(lis[2]) # math if ope == "+": ret = int(first + second) elif ope == "-": ret = int(first - second) elif ope== "*": ret = first * second elif ope== "/": ret = math.floor(first/second) elif ope== "%": ret = int(first % second) if ret == int(ret): ret = int(ret) f.write(ret) f.write("\n") print(str(ret)+"\n") # main s, f = sock('195.154.53.62', 1337) r = '' for i in range(10000): ans()