DVWA:介绍与安装

学习渗透测试,特别是 Web 渗透,最头疼的无疑就是寻找靶机环境,通常是不同的漏洞需要找不同的靶机源码,而不同的源码通常 Web 架构又不一样,所以要找到一套能够练习所有 Web 渗透技巧的靶机环境,经常需要搭建 N 个 Web站点,无疑大大提高了学习的入门门槛。

介绍

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 防护的最佳手段

安装

官网:DVWA官网

Github:DVWA Github

我使用的是Ubuntu 20.04 + Nginx 1.8.0 + PHP7.4 + MySQL 8 + DVWA

按照Nginx安装配置合集配置基础的网站访问功能。然后把从官网下载的代码复制到默认位置/var/www/html

然后进入配置文件目录var/www/html/dvwa/config/

config

我们把官方提供的模板配置文件复制一份,并命名为config.inc.php,然后使用vim填入MySQL的用户和密码

config.inc.php

然后访问设置页面ip/dvwa/setup.php

setup

可以看到配置项中有红色的部分功能没有启用。我们在php.ini配置文件中把对应功能模块的注释给去掉。

setup2

然后点击下方的Create / Reset Database按钮,框架会自动创建数据库。因为速度很快,立刻就跳转到下一个页面。

admin

默认用户名为admin,密码为password,登陆后自动显示主页

home

点击DVWA Security标签,我们设置测试框架的等级

security

默认难度为Impossible,最高难度,其他还有Low/Medium/High。本系列将会测试这四个等级。


DVWA:介绍与安装
https://blog.jackeylea.com/hack/instruction-and-installation-of-dvwa/
作者
JackeyLea
发布于
2022年5月19日
许可协议