sqlmap是一個(gè)開源的滲透測(cè)試工具,它使檢測(cè)和利用SQL注入缺陷以及接管數(shù)據(jù)庫(kù)服務(wù)器的過(guò)程自動(dòng)化。它帶有一個(gè)強(qiáng)大的檢測(cè)引擎、用于最終滲透測(cè)試器的許多小眾特性以及從數(shù)據(jù)庫(kù)指紋、從數(shù)據(jù)庫(kù)獲取數(shù)據(jù)、訪問(wèn)底層文件系統(tǒng)以及通過(guò)out在操作系統(tǒng)上執(zhí)行命令等一系列廣泛的切換。
功能特點(diǎn):
完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多種數(shù)據(jù)庫(kù)管理系統(tǒng)。
完全支持布爾型盲注、時(shí)間型盲注、基于錯(cuò)誤信息的注入、聯(lián)合查詢注入和堆查詢注入。
在數(shù)據(jù)庫(kù)證書、IP地址、端口和數(shù)據(jù)庫(kù)名等條件允許的情況下支持不通過(guò)SQL注入點(diǎn)而直接連接數(shù)據(jù)庫(kù)。
支持枚舉用戶、密碼、哈希、權(quán)限、角色、數(shù)據(jù)庫(kù)、數(shù)據(jù)表和列。
支持自動(dòng)識(shí)別密碼哈希格式并通過(guò)字典破解密碼哈希。
支持完全地下載某個(gè)數(shù)據(jù)庫(kù)中的某個(gè)表,也可以只下載某個(gè)表中的某幾列,甚至只下載某一列中的部分?jǐn)?shù)據(jù),這完全取決于用戶的選擇。
支持在數(shù)據(jù)庫(kù)管理系統(tǒng)中搜索指定的數(shù)據(jù)庫(kù)名、表名或列名
當(dāng)數(shù)據(jù)庫(kù)管理系統(tǒng)是MySQL、PostgreSQL或Microsoft SQL Server時(shí)支持下載或上傳文件。
當(dāng)數(shù)據(jù)庫(kù)管理系統(tǒng)是MySQL、PostgreSQL或Microsoft SQL Server時(shí)支持執(zhí)行任意命令并回現(xiàn)標(biāo)準(zhǔn)輸出。
安裝說(shuō)明:
安裝Sqlmap
Sqlmap的開源項(xiàng)目,托管在github,最簡(jiǎn)單的安裝方式便是使用git,執(zhí)行如下命令:
1 git clone https://github.com/sqlmapproject/sqlmap.git
片刻后命令執(zhí)行完畢,可以看到當(dāng)前目錄中多了一個(gè)名為“sqlmap”的目錄,
該目錄中保存著Sqlmap的Python源碼、配置文件和文檔。
由于Python是解釋執(zhí)行的語(yǔ)言,不用編譯,所以至此最新版的Sqlmap已經(jīng)安裝完成。
cd到“sqlmap”目錄中,用命令“python sqlmap”啟動(dòng)Sqlmap。
當(dāng)想要更新Sqlmap時(shí),進(jìn)入到“sqlmap”目錄中執(zhí)行命令“git pull”即可。
常見問(wèn)題:
1、我能將sqlmap與我正在開發(fā)的安全工具集成嗎?
對(duì)。sqlmap是根據(jù)GPLv2的條款發(fā)布的,這意味著任何派生作品都必須在不進(jìn)一步限制通用公共許可證本身授予的權(quán)利的情況下分發(fā)。
2、我能將Sql映射嵌入專有軟件嗎?
如果您希望將SqLMAP技術(shù)嵌入到專有軟件中,我們出售替代許可證(聯(lián)系sales@sqlmap.org)
3、哪個(gè)篡改腳本用來(lái)繞過(guò)(WAF/IDS/IPS)保護(hù)?
如果你不能手動(dòng)評(píng)估目標(biāo),不要使用篡改腳本。只有在滲透測(cè)試人員首先知道如何繞過(guò)保護(hù)的情況下(很可能是在請(qǐng)求/響應(yīng)檢查數(shù)小時(shí)之后),才使用篡改腳本。盲目使用和組合許多篡改腳本而不理解是一個(gè)壞主意。