sqlmap簡介
sqlmap支持五種不同的注入模式:
- UNION query SQL injection(可聯(lián)合查詢注入)
Error-based SQL injection(報錯型注入)
Boolean-based blind SQL injection(布爾型注入)
Time-based blind SQL injection(基于時間延遲注入)
Stacked queries SQL injection(可多語句查詢注入)
sqlmap支持的數(shù)據(jù)庫
- MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB
首先 運(yùn)行sqlmap需要python環(huán)境
這里就不介紹安裝了
圖片.png
這里由于我安裝了兩個版本的python2.75和pyhton3.6所以我要選定那個python環(huán)境來運(yùn)行sqlmap
這是我的命令 : python2.exe sqlmap.py -u "URL"
圖片.png
本篇bolg主要講一些sqlmap的命令
這里有一些基本命令
參數(shù): -u /--url
最基本格式
python sqlmap.py -u “http://www.target.com/index.php?id=1”
參數(shù): -m
從文本中獲取多個目標(biāo)掃描,但是每一行一個 url。
python sqlmap.py -m “urllist.txt”
參數(shù):-r
從文件中加載 HTTP 請求,這樣的話 就不需要在去設(shè)定 Cookie,POST 數(shù)據(jù) ...... 等等.
python sqlmap.py –r “/tmp/1.txt”
參數(shù):--batch
永遠(yuǎn)不要要求用戶輸入,使用默認(rèn)行為
python sqlmap.py -u "url" --batch
參數(shù):--data
此參數(shù)是把數(shù)以POST方式提交,sqlmap會像檢測GET參數(shù)一樣檢測POST過去的參數(shù)。
python sqlmap.py -u "http://www.target.com/vuln.php" --data="id=1”
參數(shù):--cookie
當(dāng)web需要登錄的時候,需要我們抓包獲取cookie參數(shù),然后復(fù)制出來,加到--cookie參數(shù)中。
參數(shù):--user-agent
默認(rèn)情況下sqlmap的HTTP請求頭中的User-Agent值是: sqlmap/1.0-devxxxxxxxxx(http://sqlmap.org)這個時候可以手動指定偽造一個User-Agent。
python sqlmap.py -u “http://www.target.com” --level 3 --user-agent=”aaaaaa” --dbs
參數(shù):--referer
sqlmap可以在請求中偽造HTTP中的referer。
python sqlmap.py -u “http://www.target.com” --leve 3 --referer=”www.baidu.com” –dbs
當(dāng)--level參數(shù)設(shè)定>=3時,會嘗試進(jìn)行referer注入。
參數(shù):--level
共有五個等級,默認(rèn)為1,sqlmap使用的payload可以在xml/payloads.xml中看到,
自己也可以根據(jù)相應(yīng)的格式添加自己的payload。
level>=2的時候就會測試HTTP Cookie。
level>=3的時候就會測試HTTP User-Agent/Referer頭。
level=5 的時候會測試HTTP Host。
-v 默認(rèn)為1:
0、只顯示python錯誤以及嚴(yán)重的信息。
1、同時顯示基本信息和警告信息。(默認(rèn)等級)
2、同時顯示debug信息。
3、同時顯示注入的payload。
4、同時顯示HTTP請求。
5、同時顯示HTTP響應(yīng)頭。
6、同時顯示HTTP響應(yīng)頁面。
常用搭配
--dbs 爆數(shù)據(jù)庫
--current-db 爆當(dāng)前數(shù)據(jù)庫
--tables -D database_name 爆表名
--columns -T table_name -D database_name 爆字段
--dump -C column_1,column_2 -T table_name -D database_name 爆字段內(nèi)容