參考連結:https://blog.csdn.net/wn314/article/details/78872828
sqlmap 下載下傳位址:http://sqlmap.org/

sqlmap安裝:我下載下傳的是windows 版的.zip 檔案。壓縮檔案夾解壓即可使用。
打開cmd,并切換到sqlmap 檔案夾下,sqlmap 路徑為D:360Downloadssqlmapproject-sqlmap-3f1a8e8。
打開cmd,同時按鍵Win+r,輸入cmd,點解确定,即可打開cmd。
切換到sqlmap 檔案夾下,如下圖。
sqlmap 使用環境:需要安裝python,本人以前就有安裝python3,但還要安裝python3中的pymysql
python3安裝pymysql
-
首先確定自己安裝了pip環境,并添加到環境變量中。
在運作>cmd>控制台輸入pip,點選回車,有如下提示說明環境正常。
2. 運作python,然後輸入import pymysal,有如下提示則提示沒有安裝PyMySQL子產品。
3. 使用pip install PyMySQL回車,等待安裝。
4. 運作python環境,輸入import pymysql,如圖未報錯則說明pymysql子產品安裝正常。
然後輸入quit() 退出python3。
輸入指令python sqlmap.py 出現以下圖檔結果則說明sqlmap 環境搭建成功,可以進行測試了。
可以先輸入python sqlmap.py -help 檢視一下sqlmap 有哪些參數。
1.直接連接配接資料庫
參數:-d
使用參數“-d”直接連接配接資料庫,我用如下指令連接配接裝在本機上的Mysql。
python sqlmap.py -d "mysql://root:[email protected]:3306/DISSchool"
2.指定目标URL
參數:-u 或 –url
使用參數“-u”或“–url”指定一個URL作為目标,該參數後跟一個表示URL的字元串,可以是http協定也可以是https協定,還可以指定端口,如:
python sqlmap.py -u "http://192.168.10.1/login.htm?id=0"
python sqlmap.py -u "http://192.168.56.10.1:80/login.htm?id=0"
python sqlmap.py -u "http://192.168.10.1/login.htm?ui_user=user&ui_pws=admin"
注:url 需要帶雙引号,url 後面需要加?帶參數。
sqlmap PC連接配接路由器,檢查一下登陸頁面是否有注入漏洞,參數ui_user和ui_pws,是按F12鍵,查詢到的登陸頁面賬号和密碼的id号。運作以下指令
python sqlmap.py -u "http://192.168.10.1/login.htm?ui_user=user&ui_pws=admin"
python sqlmap.py -u "http://192.168.10.1/login.htm" --data="ui_user=user&ui_pws=admin"
在輸出結果中可以看到參數ui_user和ui_pws 不可注入。
[WARNING] GET parameter 'ui_user' does not seem to be injectab
[WARNING] GET parameter 'ui_pws' does not appear to be dynamic
在運作指令是需要手動輸入y 才能繼續往下運作,如果嫌手動麻煩,可以在指令後加上參數--bacth,會自動選擇。
3.從Burp或WebScarab的代理日志中解析目标
參數:-l
使用參數“-l”指定一個Burp或WebScarab的代理日志檔案,Sqlmap将從日志檔案中解析出可能的攻擊目标,并逐個嘗試進行注入。該參數後跟一個表示日志檔案的路徑。
WebScarab我沒有用過,Burp倒是常常會用。Burp預設不記錄日志,想要記錄日志需要手動開啟,設定方法如下圖所示:
隻用勾選代理中的請求資料就足夠了,日志檔案路徑可随意設定,這裡我設定日志檔案名為proxy.log,放在使用者主目錄中。
python sqlmap.py -l proxy.log
python sqlmap.py -l E:proxy.log
python sqlmap.py -l proxy.log --bacth
python sqlmap.py -l proxy.log --batch >>E:log.txt
python sqlmap.py -l E:Logproxy_0819.log --batch >>E:logsqlmap_log_0819.txt
注意日志檔案的路徑要寫正确。執行該指令時,每找到一個可能的攻擊目标,Sqlmap都會詢問是否要檢測該目标。,預設回答為“Y”,想要測試該目标,直接按Enter鍵就行。
4.從文本檔案中解析目标
參數:-m
參數“-u”一次隻能指定一個URL,若有多個URL需要測試就顯得很不友善,我們可用将多個URL以一行一個的格式儲存在文本檔案中,然後使用參數“-m”,後跟該文本檔案路徑,讓Sqlmap依次讀取檔案中的URL作為攻擊目标。
如我們有檔案url.txt,内容為:
python sqlmap.py -u "http://192.168.10.1/login.htm?id=0"
python sqlmap.py -u "http://192.168.56.10.1:80/login.htm?id=0"
python sqlmap.py -u "http://192.168.10.1/login.htm?ui_user=user&ui_pws=admin"
然後可用使用如下指令讓Sqlmap測試這些URL是否存在注入漏洞:
python sqlmap.py -m url.txt
同樣,執行該指令時,Sqlmap會很貼心地一個個詢問:“do you want to test this URL?”