dvwa安裝和使用指南
DVWA(dema vulnerable web application)是一個基於PHP/MYSQL環境寫的一個web應用。DVWA是randomstorm的一個開源項目。他是常規的web漏洞教學和檢測web脆弱性的程序,目標是協助安全專家測試。他可以測試的漏洞包括sql註入,xxs,sql盲註,命令行註入,crsf等一些常見的安全漏洞。
下載網站
下載
解壓
我在虛擬機中演示因此我把文件拖在虛擬機裏面了
需要安裝xampp環境
XAMPP(Apache+MySQL+PHP+PERL)是一個功能強大的建站集成軟件包。這個軟件包原來的名字是 LAMPP,但是為了避免誤解,最新的幾個版本就改名為 XAMPP 了。
下載地址
將文件拷貝到XAMPP安裝目錄下的\xampp\htdocs目錄下
通過xampp的控制臺啟動XAMPP的apache和mysql服務。
通過瀏覽器訪問dvwa所在主機訪問的地址為http://x.x.x.x/dvwa/stuep.php
註意格式大小寫進入dvwa的web安裝界面
通過該頁面的“create/resetdatabase”可以直接將DVWA的數據庫建立起來在創建之前請修改\xampp\htdocs\dvwa\config裏面config.php裏面連接mysql數據庫的密碼。XAMPP集成環境裏面MYSQL的默認登陸密碼為root/root,請根據實際情況修改。
修改後點擊保存。
回到dvwa的setup頁面點擊“create/reset database”顯示如下頁面即表示安裝成功。
此時會自動跳轉到DWVA的登陸界面或者點擊login打開登陸界面。默認的登陸賬號信息為
Username: admin
Passwod:password
進入後將DVWA的安全等級修改為中或者低,只要不是高就行
DVWA上的漏洞列表
DVMA正如他的名字一樣是一個包含了很多漏洞的應用系統。DVWA的漏洞包括了OWASP oepen web application security project的web 10大漏洞。這裏提一下Owasp top10 2010年發布的數據
The OWASP Top 10 Web ApplicationSecurity Risks for 2010 are:
A1: Injection // 註入漏洞
A2: Cross-Site Scripting (XSS) //跨站腳本
A3: Broken Authentication and Session Management //錯誤的授權和會話管理
A4: Insecure Direct Object References //不正確的直接對象引用
A5: Cross-Site Request Forgery (CSRF)//偽造跨站請求
A6: Security Misconfiguration//安全性錯誤配置
A7: Insecure Cryptographic Storage//不安全的加密存儲
A8: Failure to Restrict URL Access//未驗證的重定向和傳遞
A9: Insufficient Transport Layer Protection//不足的傳輸層防護
A10: Unvalidated Redirects and Forwards//無效的重定向和轉向
DVWA裏面具體包括如下這些漏洞:
1.暴力破解漏洞通過brute force登錄頁面進入到該漏洞的測試位置。這個漏洞是用來測試暴力破解工具和展示不安全的弱密碼。
2.命令執行漏洞在存在風險的系統上執行命令。
3.CSRF偽造跨站請求漏洞,允許攻擊者去修改應用的管理員密碼。
4.SQL註入,DVWA包括盲註和錯誤型註入兩種SQL註入漏洞類型。
5.不安全的文件上傳漏洞,允許攻擊者上傳惡意的文件到web服務器上
6.XSS跨站腳本漏洞,允許攻擊者註入他們自己的腳本到web服務器上。DVWA系統裏面包含了反射性XSS和存儲型XSS兩種類型。
7.文件包含漏洞,允許進行本地文件包含執行和遠程文件包含執行
8.驗證碼繞過(但由於驗證碼使用了google的,我們網絡太和諧,需要代理或者VPN連接,經過VPN環境測試,也不太靠譜)
6.DVWA的安全級別和漏洞位置說明
在DVWA上有三種安全級別分別是
High:在這個級別下所有有漏洞的代碼都被修補過了你可以通過查看源代碼來查看修補過的漏洞。通過高級別漏洞代碼的查看可以跟低級別的代碼做一些對比從而讓安全人員更加深入的理解漏洞是怎麽出現的。
Medium中級別表示代碼已經被開發人員嘗試加固過了但是加固的不夠徹底因此漏洞還是存在。這讓開發人員能夠跟進一步認識漏洞。同時對學習者來說因為這個漏洞加大了難度要拿下這個漏洞也是一個挑戰。
Low在個級別下所有的漏洞均沒有被修復過。你可以在這個級別下測試所有的漏洞。並且通過查看源代碼來了解漏洞是如何發生的。
在LOW級別下你可以通過下面的指引找到對應的漏洞
BruteForce/Weak Passwords;
http://127.0.0.1/dvwa/login.php
http://127.0.0.1/dvwa/vulnerabilities/brute/
CommandExecution;
http://127.0.0.1/dvwa/vulnerabilities/exec/
CrossSite Request Forgery (CSRF);
http://127.0.0.1/dvwa/vulnerabilities/csrf/
FileInclusion;
http://127.0.0.1/dvwa/vulnerabilities/fi/?page=include.php
SQLInjection;
http://127.0.0.1/dvwa/vulnerabilities/sqli/
http://127.0.0.1/dvwa/vulnerabilities/brute/
InsecureFile Upload;
http://127.0.0.1/dvwa/vulnerabilities/upload/
ReflectedCross Site Scripting;
http://127.0.0.1/dvwa/vulnerabilities/xss_r/
StoredCross Site Scripting;
http://127.0.0.1/dvwa/vulnerabilities/xss_s/
Fullpath Disclosure;
Site wide. Set PHPSESSID to NULL. (NullSession Cookie) http://www.owasp.org/
index.php/Full_Path_Disclosure
Authenticationbypass;
If the admin changes the default password(password) and the ‘attacker‘ knows what
the default password is. The ‘attacker‘ mayaccess http://127.0.0.1/dvwa/setup.php
to reset the database including the defaultpassword.
Authenticationbypass;
If the admin changes the default password(password) and the ‘attacker‘ knows what
the default password is. The ‘attacker‘ mayaccess http://127.0.0.1/dvwa/setup.php
to reset the database including the default password.
所有的漏洞用戶都可以在對應的頁面點擊“view source ”的按鈕通過這個按鈕用戶可以看到對應漏洞的原代碼。同時可以比較不同級別下的源代碼從而讓安全學習人員和開發人員能夠更加進一步的認識漏洞。
PHP-IDS是一款流行的PHP入侵檢測系統就像我們知道的WAFweb應用防火墻一樣PHP-IDS可以像WAF一樣保護我們的系統。在DVWA上應用了php-ids,你可以通過頁面上的開關來將PHP-IDS關閉或者打開PHP-ids在開啟的情況下會檢查提交的惡意代碼從而進行安全防護。
DVWA上的漏洞示例-存儲型XSS
這裏以反射性XSS為例來演示如何使用DVWA上的漏洞。
第一步登錄DVWA
第二步將dvwa-security-裏面的安全級別調到最低級別
第三步選擇XSS(Reflected)頁面
第四步輸入測試腳本<script>alert(\xss\)</script>點擊提交
第五步由於此處存在反射性XSS漏洞瀏覽器會彈出“\xss\”
第六步將安全級別依次調到medium以及high級別並分別使用相關的技巧對其進行突破
本文出自 “大李子” 博客,謝絕轉載!
dvwa安裝和使用指南