CHARLIE SAYS

查理如是说
DATE 2026-08-24
THEME
SERIES / SECURITY / P-029 · 开发安全

开发安全 011:Web安全测试平台(DVWA)

DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的 PHP/MySQL Web 应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助 Web 开发者更好地理解 Web 应用安全防范的过程。

DVWA 介绍

DVWA 共有十个模块,分别是:

模块说明
Brute Force暴力破解
Command Injection命令行注入
CSRF跨站请求伪造
File Inclusion文件包含
File Upload文件上传
Insecure CAPTCHA不安全的验证码
SQL InjectionSQL 注入
SQL Injection(Blind)SQL 盲注
XSS(Reflected)反射型跨站脚本
XSS(Stored)存储型跨站脚本

需要注意的是,DVWA 1.9 的代码分为四种安全级别:Low、Medium、High、Impossible。我们可以通过比较四种级别的代码,接触到一些 PHP 代码审计的内容。

DVWA 的搭建

  1. 下载 phpStudy:phpStudy 是集成了 Apache 和 MySql 的集成环境,下载好安装 phpStudy。运行时若显示缺少 VC 运行库,需要安装对应版本的 VC9 运行库(32 位或 64 位)
  2. 安装好后运行 127.0.0.1 看是否可以出现界面
  3. 下载 DVWA:http://www.dvwa.co.uk/
  4. 下载后解压,放到 phpStudy 的 WWW 目录之下
  5. 配置一下相关文件:首先最好先配置一下 phpStudy 的数据库密码
  6. 修改后将 DVWA/config 下的 config.inc.php.dist 修改为 config.inc.php,找到其中的 db_password 改为刚设置的密码
  7. 修改成功后访问 127.0.0.1/DVWA,创建好了若没有问题便会自动跳转至登陆界面,账号/密码:admin/password

DVWA 上的漏洞列表

DVWA 正如它的名字一样是一个包含了很多漏洞的应用系统。DVWA 的漏洞包括了 OWASP(Open Web Application Security Project)的 Web 十大漏洞。DVWA 里面具体包括如下这些漏洞:

  1. 暴力破解漏洞:通过 Brute Force 登录页面进入到该漏洞的测试位置。这个漏洞是用来测试暴力破解工具和展示不安全的弱密码
  2. 命令执行漏洞:在存在风险的系统上执行命令
  3. CSRF 伪造跨站请求漏洞:允许攻击者去修改应用的管理员密码
  4. SQL 注入:DVWA 包括盲注和错误型注入两种 SQL 注入漏洞类型
  5. 不安全的文件上传漏洞:允许攻击者上传恶意的文件到 Web 服务器上
  6. XSS 跨站脚本漏洞:允许攻击者注入他们自己的脚本到 Web 服务器上。DVWA 系统里面包含了反射型 XSS 和存储型 XSS 两种类型
  7. 文件包含漏洞:允许进行本地文件包含执行和远程文件包含执行
  8. 验证码绕过

参考文章

系列导航

← 网络协议 011:工具:网络抓包神器 tcpdump 使用详解 目录 开发工具 011:Git 详解 →
← 返回文章列表