题目文件:
直接搜索flag发现是一题关于二分法注入。
页面为200的字节大小为1765,所以可以通过读取每行判断是否有1765以及有没有flag的关键字样,进而提取值。
脚本如下所示:
# coding:utf-8import reimport urllibf = open('access.log','r')lines = f.readlines()datas = []for line in lines: t = urllib.unquote(line) if '1765' in t and 'flag' in t: # 过滤出与flag相关,正确的猜解 datas.append(t)flag_ascii = {} for data in datas: matchObj = re.search( r'LIMIT 0,1\),(.*?),1\)\)>(.*?) AND', data) if matchObj: key = int(matchObj.group(1)) value = int(matchObj.group(2))+1 flag_ascii[key] = valueflag = ''for value in flag_ascii.values(): flag += chr(value)print flag