sqlmap使用


sqlmap使用

一sqlmap支持的sql注入技術

默認使用以下六種技術, --technique參數設置使用具體技術
B基於布爾盲注,即根據返回頁面判斷條件真假的注入
E報錯注入,即頁面返回報錯信息,或者把注入的語句的結果直接返回在頁面中
U查詢注入,可以使用union的情況下的注入。默認查詢十列 。--union-cols 整數-整數 增大查詢列的范圍 。默認查詢字符為null,可以通過--union-char 字符設置相應字符
S堆疊注入,可以同時執行多條語句的執行時的注入
T基於時間盲注,即不能根據頁面返回內容判斷任何信息,用條件語句查看時間延遲。--time-sec 數 設置等待時間,默認為5秒
Q內聯查詢注入

二sqlmap基本探測

直接連接數據庫

sqlmap -d "mysql://用戶名:密碼@ip地址:端口/數據庫名" --sql-shell(可選參數,進行shell管理)

對url探測

get方式:sqlmap -u "url"
post方式:sqlmap -u "url" --data "post數據"
cookie方式:sqlmap -u "url" --cookie "cookie數據"。--cookie-del 設置cookie分隔符。--load-cookies 通過帶有cookie的文件進行探測注入。--drop-set-cookie如果響應中使用set-cookie設置了新的cookie,sqlmap會在之后的探測中使用它,可以用這個參數忽略新cookie。如果是對cookie進行注入則要通過--level 2及以上

對文件探測

-l從bp等讀取http日志請求文件
-m讀取文件中多個url,同時對多個url進行探測
-r主要用來檢測http請求信息如user-agent中是否存在注入
-c從sqlmap.config讀取配置好的信息進行探測
--scope="正則表達式"篩選文件中的一些信息

三sqlmap枚舉

枚舉數據庫名--dbs
枚舉數據庫表--tables
枚舉列名--columns
枚舉數據--dump
--users枚舉用戶名
--password 枚舉用戶密碼
--role 枚舉用戶權限

四sqlmap性能優化

--keep-alive 設置持久連接,加快探測速度
--null-connection 檢索沒有body響應的內容,多用於盲注
--thread 最大為10 設置多線程
-o 開啟所有默認性能優化
-smart 快速判斷,節約時間
設置延遲 --delay 時間 。當頁面無變化,布爾無真假,從來不報錯時用延時注入
設置超時 --timeout 時間
設置重新連接次數 --retries 次數

五sqlmap指定注入

-p 指定具體探測參數
*加到參數的后面,指定url或者報文頭上的一些參數進行探測
--os 操作系統 sqlamp會自動識別,但也可以以此指定
--dbms 數據庫類型 sqlamp會自動識別,但也可以以此指定

六使用temper腳本

tamper腳本使用(sqlmap目錄下,tamper文件夾存放)
--temper “腳本名稱,多個腳本用逗號分隔”

七其它參數

--level 1-5 執行的測試等級,默認為1,cookie在2時測試,use-agent在3時測試。一些探測只有設置值達到一定等級時才探測
--batch 自動選擇yes
--risk 執行風險等級,默認為1,2增加基於事件的測試語句,3增加or語句的sql測試
--identify-waf檢測防火牆類型
--param-del="分割符"設置參數的分割符
設置http協議私鑰 --auth-file 包含私鑰證書的文件
--skip-urlencode 不進行url編碼

八sqlmap對http參數的注入

用sqlmap探測,它的user-qgent會有特定的值,容易被檢測過濾,所以可以使用如下命令更改
--user-agent=""設置指定的值
--random-agent 從自帶的文件中隨機選取一個值
如果是對user-agent進行注入,可以在文件的相應參數后面加* 否則應該使--level 3及以上
如果對host注入的level應該為5
如果對refer注入level應該為3

設置http認證參數

--auth-type 有basic ntlm digest
--auth-cred 語法為username:password

九sqlmap進行命令執行

--os-cmd="命令"(要知道網站的絕對路徑)
sqlmap寫webshell
--os-shell
上傳自己的wellshell,--file-write "本地文件地址" --file-dest "目標文件地址"

十sqlmap設置代理

隱藏自己的真實ip
--proxy http://ip:端口
--proxy-file 使用一個包含多條代理的文件中的代理
--proxy-cred 語法為username:password


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM