3.5 SqlMap用法—優化
這些開關可用于優化sqlmap的性能。
1.捆綁優化
開關: -o
此開關是一個別名,它隱式設置以下選項和開關:
--keep-alive--null-connection--threads=3如果未設置為更高的值。
請閱讀以下有關每個開關的詳細信息。
2.輸出預測
開關: --predict-output
此開關在推理算法中用于對要檢索的值的字符進行順序統計預測。基于給定的項目txt/common-outputs.txt以及當前使用的枚舉知識,將構建具有最有希望的字符值的統計表。如果可以在公共輸出值中找到該值,則隨著過程的進行,后續字符表的范圍將越來越窄。如果與常見DBMS實體的檢索(如系統表名稱和特權)結合使用,則速度非常重要。當然,例如,如果您注意到數據庫表名稱或類似名稱中的公共模式,則可以根據需要編輯公共輸出文件。
請注意,此開關與--threads開關不兼容。
3.HTTP保持活動
開關: --keep-alive
此開關指示sqlmap使用持久HTTP連接。
請注意,此開關與--proxy開關不兼容。
4.HTTP NULL連接
開關: --null-connection
有特殊的HTTP請求類型,可用于獲取HTTP響應的大小而無需獲取HTTP正文。這種知識可以在盲目注射技術被用來區分True來自False響應。提供此開關后,sqlmap將嘗試測試和利用兩種不同的NULL連接技術:Range和HEAD。如果目標Web服務器支持其中任何一種,則可以明顯節省已使用的帶寬,從而提高速度。
白皮書《SQL盲注入中的性能提升-占用2(帶寬)》中詳細介紹了這些技術。
請注意,此開關與switch不兼容--text-only。
4.并發HTTP(S)請求
選項: --threads
可以指定允許sqlmap執行的并發HTTP(S)請求的最大數量。此功能依賴于多線程概念,并繼承了它的優點和缺點。
此功能適用于蠻力開關以及通過任何一種盲目SQL注入技術完成數據提取的情況。對于后一種情況,sqlmap首先在單線程中計算查詢輸出的長度,然后啟動多線程。每個線程都被分配為檢索查詢輸出的一個字符。檢索到該字符后,線程結束-使用sqlmap中實現的二等分算法,最多需要7個HTTP(S)請求。
出于性能和站點可靠性的原因,并發請求的最大數量設置為10。
請注意,此選項與switch不兼容--predict-output。
SqlMap中文版使用教程
推薦文章: