sqlmap的一些小技巧

POST注入

有兩種方法來進行post注入,一種是使用--data參數,將post的key和value用類似GET方式來提交。二是使用-r參數,sqlmap讀取用戶抓到的POST請求包,來進行POST注入檢測。

查看payload

之前一直是加本地代理,然後用burpsuit來看sqlmap的payload,到現在才發現用-v參數就可以實現。一直認爲-v實現的只是控制警告,debug信息級別。實際上使用-v 3就可以顯示注入的payload,4,5,6還可以顯示HTTP請求,HTTP響應頭和頁面。

使用google搜索

sqlmap可以測試google搜索結果中的sql注入,很強大的功能吧。使用方法是參數-g。不過感覺實際使用中這個用的還是很少的。

請求延時

在注入過程中請求太頻繁的話可能會被防火牆攔截,這時候--delay參數就起作用了。可以設定兩次HTTP請求間的延時。有的web程序會在多次錯誤訪問後屏蔽所有請求,這樣就導致之後所有的測試無法進行,繞過這個策略可以使用--safe-url,每隔一段時間去訪問一個正常的頁面。

僞靜態頁面

有些web服務器進行了url rewrite或者網站是僞靜態的,無法直接提供測試參數,這樣子可以使用*來代替要測試的參數。

執行系統命令

數據庫支持,並且當前用戶有權限的時候,可以執行系統命令,使用--os-cmd或者--os-shell,具體的講,當可以執行多語句的時候,會嘗試用UDF(MySQL,PostgrepSQL)或者xp_cmdshell(MSSQL)來執行系統命令。不能執行多語句時,仍然會嘗試創建一個webshell來執行語句,這時候就需要web的絕對路徑了。總體來說,成功率偏低,不過個人也有成功的經驗~

測試等級

sqlmap使用--level參數來進行不同全面性的測試,默認爲1,不同的參數影響了使用哪些payload,2時會進行cookie注入檢測,3時會進行useragent檢測。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章