DVWA介绍

DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web 应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程。
DVWA 一共包含了十个攻击模块,分别是:Brute Force(暴力(破解))、Command Injection(命令行注入)、CSRF(跨站请求伪造)、- File Inclusion(文件包含)、File Upload(文件上传)、Insecure CAPTCHA (不安全的验证码)、SQL Injection(SQL注入)、SQL Injection(Blind)(SQL盲注)、XSS(Reflected)(反射型跨站脚本)、XSS(Stored)(存储型跨站脚本)。包含了 OWASP TOP10 的所有攻击漏洞的练习环境,一站式解决所有 Web 渗透的学习环境。

  另外,DVWA 还可以手动调整靶机源码的安全级别,分别为 Low,Medium,High,Impossible,级别越高,安全防护越严格,渗透难度越大。一般 Low 级别基本没有做防护或者只是最简单的防护,很容易就能够渗透成功;而 Medium 会使用到一些非常粗糙的防护,需要使用者懂得如何去绕过防护措施;High 级别的防护则会大大提高防护级别,一般 High 级别的防护需要经验非常丰富才能成功渗透;最后 Impossible 基本是不可能渗透成功的,所以 Impossible 的源码一般可以被参考作为生产环境 Web 防护的最佳手段

搭建步骤

从github上获取DVWA代码并修改相关配置

当前github路径
中文说明路径

1.克隆DVWA项目到centos上git clone https://github.com/digininja/DVWA.git
2.将DVWA整个目录复制到/var/www/html/目录下cp -r DVWA /var/www/html
3.进入DVWA的config目录中cd /var/www/html/DVWA/config
4.配置DVWA的环境(config目录下自带,要换个名字)cp config.inc.php.dist config.inc.php
5.配置config.inc.php文件,分别设置MYSQL数据库:

$_DVWA = array();
$_DVWA[ 'db_server' ]   = getenv('DB_SERVER') ?: '127.0.0.1';
$_DVWA[ 'db_database' ] = 'dvwa';
$_DVWA[ 'db_user' ]     = 'root';       # 修改为root或者其他的mysql用户名
$_DVWA[ 'db_password' ] = '<这里填之前安装mysql时设置的root密码或者上面设置的mysql用户名对应的密码>';
$_DVWA[ 'db_port']      = '3306';

和这个ReCAPTCHA:

# ReCAPTCHA settings
#   Used for the 'Insecure CAPTCHA' module
#   You'll need to generate your own keys at: https://www.google.com/recaptcha/admin
# 直接用这里的值就行
$_DVWA[ 'recaptcha_public_key' ]  = '6LdK7xITAAzzAAJQTfL7fu6I-0aPl8KHHieAT_yJg';
# 直接用这里的值就行
$_DVWA[ 'recaptcha_private_key' ] = '6LdK7xITAzzAAL_uw9YXVUOPoIHPZLfw2K1n5NVQ';

修改php配置

一般PHP配置文件的路径为:/etc/php.ini
要是没找到:尝试find一下:find / -name php.ini
修改php.ini文件,将allow_url_include设置为On

allow_url_include = On

修改DVWA服务并通过设置检查

  • 将DVWA目录的权限给apache打开:chown apache:apache DVWA-2.0.1 -R
  • 进行设置检查: 在浏览器中输入http://192.168.48.137/DVWA/setup.php
    如果像下面这样都显示为绿色,就没问题了,有标红的话,按图中说明处理下

    或者这篇文章也写了处理方法。不过可能DVWA版本不同,他这里面的检查项和我的不太一样

PS: 我当时设置时,有检查项标红,但是正确处理后,出现个情况:一致不变过来;后面把整个vmware重启后就好了......

创建数据库

这一步挺简单,在setup.php页面下, 点Create/Reset Database按钮就行。如果上面检查都通过了的话,应该会显示Set up success,然后自动跳转到登录页面。

登录DVWA

使用默认用户名和密码: admin/password在login页面登录即可

修改网站安全性设置

登录后,在网页中找到DVWA Security,进入并修改为 Low 。便于开始最初的渗透测试学习。

大体上参考于这篇文章:Centos7安装并配置DVWA渗透测试环境(靶场)

最后修改日期: 2023年11月11日

作者

留言

撰写回覆或留言