什么是SQLmap?
SQLmap是一款用來檢測與利用SQL注入漏洞的免費開源工具,有一個非常棒的特性,即對檢測與利用的自動化處理(數據庫指紋、訪問底層文件系統、執行命令)。
讀者可以通過位于SourceForge的官方網站下載S
SQLmap的作者是誰?
Bernardo DameleAssumpcao Guimaraes (@inquisb),讀者可以通過bernardo@sqlmap.org與他取得聯系,以及Miroslav Stampar (@stamparm)讀者可以通過miroslav@sqlmap.org與他聯系。
同時讀者也可以通過dev@sqlmap.org與SQLmap的所有開發者聯系。
執行SQLmap的命令是什么?
進入sqlmap.py所在的目錄,執行以下命令:
#python sqlmap.py -h
(譯注:選項列表太長了,而且與最新版本有些差異,所以這里不再列出,請讀者下載最新版在自己機器上看吧)
SQLmap命令選項被歸類為目標(Target)選項、請求(Request)選項、優化、注入、檢測、技巧(Techniques)、指紋、枚舉等。
如何使用SQLmap:
為方便演示,我們創建兩個虛擬機:
1、受害者機器, windows XP操作系統,運行一個web服務器,同時跑著一個包含漏洞的web應用(DVWA)。
2、攻擊器機器,使用Ubuntu 12.04,包含SQLmap程序。
本次實驗的目的:使用SQLmap得到以下信息:
3、枚舉MYSQL用戶名與密碼。
4、枚舉所有數據庫。
5、枚舉指定數據庫的數據表。
6、枚舉指定數據表中的所有用戶名與密碼。
使用SQLmap之前我們得到需要當前會話cookies等信息,用來在滲透過程中維持連接狀態,這里使用Firefox中名為“TamperData”的add-on獲取。

當前得到的cookie為“security=high;PHPSESSID=57p5g7f32b3ffv8l45qppudqn3″。
為方便演示,我們將DVWA安全等級設置為low:

接下來我們進入頁面的“SQL Injection”部分,輸入任意值并提交。可以看到get請求的ID參數如下:
“http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#”
因此該頁面就是我們的目標頁面。
以下命令可以用來檢索當前數據庫和當前用戶:
“./sqlmap.py -u“http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” –cookie=”PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low” -b –current-db –current-user”
使用選項:
1、–cookie : 設置我們的cookie值“將DVWA安全等級從high設置為low”
2、-u : 指定目標URL
3、-b : 獲取DBMS banner
4、–current-db : 獲取當前數據庫
5、–current-user:獲取當前用戶
結果如下:

可以看到結果如下:
DBMS : MySQLversion 5.0
OS versionUbuntu 12.04
新聞熱點
疑難解答