有兩種方法可以註入帖子。壹種是使用- data參數以類似GET的方式提交帖子的鍵和值。第二種方法是使用-r參數,sqlmap讀取用戶捕獲的POST請求包來檢測POST註入。
查看有效負載
以前,我總是添加壹個本地代理,然後用burpsuit查看sqlmap的有效負載。直到現在,我發現可以用-v參數來實現。壹直認為-v只實現控制警告和調試信息級。事實上,使用-v 3可以顯示註入的有效負載4、5和6,還可以顯示HTTP請求、HTTP響應頭和頁面。
使用谷歌搜索
Sqlmap可以在google搜索結果中測試sql註入,功能非常強大。使用方法是參數-g .不過,我感覺實際使用中很少用到這個。
請求延遲
在註入過程中,如果請求過於頻繁,可能會被防火墻攔截。此時,- delay參數開始起作用。您可以設置HTTP請求之間的延遲。壹些網絡程序會在多次錯誤訪問後阻止所有請求,這將導致所有後續測試無法進行。為了繞過這種策略,您可以偶爾使用- safe-url訪問壹個普通頁面。
偽靜態頁面
壹些web服務器有url重寫或網站來自偽靜態,因此不可能直接提供測試參數。這樣,您可以使用*代替要測試的參數。
執行系統命令
當數據庫支持並且當前用戶有權限時,他可以使用-OS-cmd或- os-shell執行系統命令。具體來說,當可以執行多條語句時,他會嘗試用UDF(MySQL、PostgrepSQL)或XP _ cmdshell(MSSQL)執行系統命令。當您無法執行多個語句時,您仍然會嘗試創建壹個webshell來執行語句,然後您需要web的絕對路徑。總體來說成功率較低,但個人也有成功的經歷~
測試等級
Sqlmap使用- level參數進行不同的綜合測試。默認值為1,不同的參數會影響使用哪個有效負載。當它為2時,將檢測到cookie註入;當它為3時,將檢測到useragent。