sqlmap是一種開源的滲透測試工具,可以自動檢測和利用sql注入漏洞以及接入該資料庫的伺服器。它擁有非常強大的檢測引擎、具有多種特性的滲透測試器、通過資料庫指紋提取通路底層檔案系統并通過外帶連接配接執行指令。 支援的資料庫:mysql, oracle, postgresql, microsoft sql server, microsoft access, ibm db2, sqlite, firebird, sybase and sap maxdb sql注入技術:boolean-based blind, time-based blind, error-based, union query, stacked queries and out-of-band 枚舉資料:users, password hashes, privileges, roles, databases, tables and columns
sqlmap需要安裝在linux系統下,這裡将采用ubuntu14.04+sqlmap來安裝。
準備ubuntu14.04,配置網絡,安裝python2.7.8
下載下傳sqlmap,兩種方式:
b) 利用git指令:
git clone https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
3. 保證python安裝成功,運作python出現版本資訊
4. 此時運作進入xx/xx/sqlmap-dev檔案夾,運作
python sqlmap.py –h可以得到一個基本的參數說明
python sqlmap.py –hh 可以得到一個詳細的參數說明

需要注意,sqlmap有些功能需要第三方庫的支援,如果某些參數指令需要安裝第三方庫請自行下載下傳安裝
sqlmap的參數說明很長,尤其是在-hh參數下的幫助文檔更為詳細。
1.資訊顯示
-v 可以設定6個等級,用來控制顯示不同的資訊,一般選3就行了
2.選擇目标
-d 直接連接配接目标資料庫
-u 連接配接目标url位址,常用,注意後面的id=*,沒有是不行的
-m 可以連接配接多個目标
-g 通過google dork來選擇目标(什麼是google dork?,就是在google上搜你需要攻擊的漏洞類型,看圖,也就是谷歌搜尋後得到的位址)
3.漏洞掃描
輸入下面的指令,對該網址進行漏洞檢測(說明一點,不是所有都有漏洞):
輸入後程式開始運作,出現下面這個圖,說明sqlmap開始對這個url進行漏洞檢測。
從結果中,可以得到該伺服器的作業系統為windows 2003或xp
資料庫的類型是microsoft access。
枚舉:
-a 檢索所有内容
--dbs掃描資料庫資訊
--tables 列出資料庫所有的表資訊
--columns 列出資料庫表中的所有字段資訊
--current-db 列出目前的資料庫名稱
--roles 枚舉使用者
--dump-all 列所有表的内容
--exclude-sysdbs 列舉使用者資料庫的表内容
--common-tables暴力破解表
….此處省略
再次輸入指令:
從圖中,可以得到資料庫名稱microsoft_access_masterdb,其中有四個表分别為company,news,products,userinfo
試試能不能枚舉使用者名稱,輸入指令:
。。。居然提示,microsoft access不可以進行這樣的枚舉
試試枚舉所有表的資訊,那麼輸入指令:
那麼,看看products表中的詳細資訊,輸入指令:
等結果時候有點慢,就ctrl+c給結束了,可以看部分内容,如下圖:
ps:隻是簡單的介紹下使用的基本操作,用于安全軟體測試,作者也是在學習,說實話沒啥意思,雖然很不願意幹這事,工作沒辦法
![]()
sqlmap使用筆記