前言
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 防护的最佳手段
需要的东西:
1.DVWA下载GitHub下载地址: https://github.com/digininja/DVWA
2.小皮面板安装
https://www.xp.cn/phpstudy
话不多说,让我们开始搭建叭!!!
第一步:环境搭建
进入小皮面板(phpstudy)官网
点击下载phpstudy v8.1

下载成功后解压到指定目录,然后双击phpstudy安装程序进行安装

开始安装


安装完成


打开面板,启动apache跟mysql服务


第二步,下载dvwa靶场


点击Code,选择下载压缩包


下载后解压到指定目录,然后重命名文件夹为DVWA




第三步,打开小皮面板添加文件目录
点击网站,点击管理


点击根目录


我们会进到这个页面


这时候把DVWA文件夹放进来


然后访问网站:localhost/DVWA(其实就是面板里的本地访问地址)
会出现这个页面


这里告诉我们,系统错误,需要先将config/config.inc.php.dist复制一份,修改文件名为config.inc.php
具体操作为访问刚刚我们放到网站根目录下的DVWA文件,然后进入config文件夹
将config.inc.php.dist复制一份,然后重命名为config.inc.php


第四步,修改配置文件内容
回到小皮面板,点击数据库,查看用户名跟密码。这里可以看见,我的用户名跟密码都是root(后续有需求自己改)


最后一步,修改config.inc.php文件
将
D V W A [ ′ d b u s e r ′ ] = g e t e n v ( ′ D B U S E R ′ ) ? : ′ d v w a ′ ; _DVWA[ ‘db_user’ ] = getenv(‘DB_USER’) ?: ‘dvwa’; DVWA[′dbuser′]=getenv(′DBUSER′)?:′dvwa′;_DVWA[ ‘db_password’ ] = getenv(‘DB_PASSWORD’) ?: ‘p@ssw0rd’;
修改成
D V W A [ ′ d b u s e r ′ ] = g e t e n v ( ′ D B U S E R ′ ) ? : ′ r o o t ′ ; _DVWA[ ‘db_user’ ] = getenv(‘DB_USER’) ?: ‘root’; DVWA[′dbuser′]=getenv(′DBUSER′)?:′root′;_DVWA[ ‘db_password’ ] = getenv(‘DB_PASSWORD’) ?: ‘root’;
然后保存


接下来注释掉第27、28行,并在第29行添加:
D V W A [ ′ r e c a p t c h a p u b l i c k e y ′ ] = ′ 6 L d J J l U U A A A A A H 1 Q 6 c T p Z R Q 2 A h 8 V p y z h n f f D 0 m B b ′ ; _DVWA[ ‘recaptcha_public_key’ ] = ‘6LdJJlUUAAAAAH1Q6cTpZRQ2Ah8VpyzhnffD0mBb’; DVWA[′recaptchapublickey′]=′6LdJJlUUAAAAAH1Q6cTpZRQ2Ah8VpyzhnffD0mBb′;_DVWA[ ‘recaptcha_private_key’ ] = ‘6LdJJlUUAAAAAM2a3HrgzLczqdYp4g05EqDs-W4K’;
这里其实很多博主都没讲,为什么要这样做,我这里解释一下:
为什么要注释掉原环境变量配置?1. 简化本地测试环境配置原设计意图:原配置通过 getenv() 从环境变量中读取 reCAPTCHA 密钥,目的是实现 敏感信息与代码分离(如生产环境中的密钥管理)。
本地测试痛点:但在本地搭建 DVWA 漏洞演练环境时,多数用户不需要真实 reCAPTCHA 服务,且注册 Google reCAPTCHA 账号并生成密钥会增加额外步骤。
解决方案:注释掉环境变量配置,改为硬编码密钥,绕过密钥申请流程,直接启用 CAPTCHA 功能。
- 避免空值导致的模块失效原配置风险:若环境变量 RECAPTCHA_PUBLIC_KEY 和 RECAPTCHA_PRIVATE_KEY 未设置,代码会默认赋值为空字符串(?: ‘’),导致 CAPTCHA 模块无法正常工作。
修改后的效果:硬编码的密钥即使未实际注册,也能让 DVWA 的 CAPTCHA 功能在本地环境中显示并运行(尽管验证逻辑可能被绕过)。新增的两行代码是什么含义?
- 功能作用reCAPTCHA 公钥(Public Key):用于前端页面生成 CAPTCHA 验证框(用户可见的交互组件)。
reCAPTCHA 私钥(Private Key):用于后端验证用户输入的 CAPTCHA 响应是否有效(敏感信息,需保密)。
- 密钥来源分析测试用途的通用密钥:此类密钥格式(以 6L… 开头)常见于 Google reCAPTCHA v2 的测试密钥,专门用于本地开发和调试场景。
验证逻辑的“放行”特性:使用测试密钥时,任何 CAPTCHA 输入(无论正确与否)均会被标记为“验证成功”,便于开发者调试。
安全警告:这些密钥仅限本地环境使用,若在公网服务器使用,攻击者可轻易绕过 CAPTCHA 验证。


保存,然后重新打开网站。网站会自动跳转到setup.php页面(设置页面)。


翻到网站下面,点击Create/Reset Database:


就会跳转到login.php登陆页面


这时候我们不知道这个网站的账号密码是多少,怎么办呢?
没关系,我们打开DVWA文件夹、database文件夹,打开图中所选的sql文件


我们可以清晰的看到,这五个账号密码。


admin 用户密码:password
gordonb 用户密码:abc123
1337 用户密码:charley
pablo 用户密码:letmein
smithy 用户密码:password
用admin、password登录。成功进入靶场主页。


注意:1.如果想调整设置程序安全级别访问****http://localhost/DVWA/security.php来做设置。
分别有”低、中、高、不可能“,程序安全级别越低,说明越容易被攻破,没有做任何的安全防护。主要是用来自我挑战不同等级的程序防护级别的。


2.解决DVWA中文乱码的问题,在DVWA\dvwa\includes目录下找到dvwaPage.inc.php文件中所有的”charset=utf-8”,修改为”charset=gb2312”,即可解决乱码问题。




接下来就让我们开启闯关吧!!!
(后续会持续更新闯关教程,请大家关注一下)
本文转自网络如有侵权,请联系删除。
题外话
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
网络安全学习路线&学习资源
下面给大家分享一份2025最新版的网络安全学习路线资料,帮助新人小白更系统、更快速的学习黑客技术!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

需要高清完整学习路线图,和全套网络安全技术教程的小伙伴!
↓↓↓ 扫描下方图片即可前往获取↓↓↓
学习资料电子文档
压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。

网络安全源码合集+工具包
视频教程
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,,每个章节都是当前板块的精华浓缩。(全套教程点击领取哈)

因篇幅有限,仅展示部分资料,需要扫描下方图片即可前往获取

好了就写到这了,大家有任何问题也可以随时私信问我!希望大家不要忘记点赞收藏哦!
特别声明:
此教程为纯技术分享!本文的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本书的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。!!!
1万+

被折叠的 条评论
为什么被折叠?



