游客发表

在Windows上搭建DVWA

发帖时间:2026-10-17 05:14:43

DVWA(Damn Vulnerable Web Application)在Windows上跑起来,搭建最省事的搭建路子是用XAMPP。别去折腾IIS+PHP+MySQL手动配置,搭建那是搭建给自己找麻烦。我试过三次,搭建两次死在php_mysql.dll加载失败上,搭建一次卡在MySQL 8的搭建caching_sha2_password认证插件跟老版本PHP打架。XAMPP一把梭,搭建二十分钟内能见到登录页。搭建

先去Apache Friends官网下XAMPP。搭建选PHP 7.4那个版本,搭建别追新。搭建DVWA对PHP 8的搭建兼容性时好时坏,尤其是搭建某些函数在8.0之后改了签名,登录页直接白屏给你看。搭建下载完exe,双击,安装路径用默认的C:\xampp就行,省得后面改配置文件时多一层路径要记。

装完打开XAMPP Control Panel,启动Apache和MySQL。如果Apache报错端口被占用,八成是Windows自带的IIS或者VMware的vmnat服务抢了443。点Config按钮改httpd-ssl.conf里的端口,把443换成4433,重启服务。MySQL一般不会出幺蛾子,除非你之前装过独立版MySQL且服务还在后台跑着。

接下来处理DVWA本体。从GitHub releases页下载zip包,解压到C:\xampp\htdocs\dvwa。注意是解压后的文件夹直接放进去,别搞成dvwa\DVWA-master\这种嵌套结构。放进去了之后,浏览器访问http://localhost/dvwa/setup.php,会看到一列红色项。别慌,红色不代表失败,只是还没配。

配置文件在C:\xampp\htdocs\dvwa\config\config.inc.php。用记事本打开,找到$_DVWA[ 'db_password' ]这一行,把默认的p@ssw0rd改成空字符串。XAMPP的MySQL root用户默认密码就是空的。改完保存,刷新setup.php页面,红色应该变成绿色。如果db_user那行还是红的,检查一下是不是改错了文件——config.inc.php.dist是模板,别动它。

页面底部有个Create/Reset Database按钮,点下去。它会自动建库建表,插几条测试数据。看到"Database created"或者类似的提示就说明成功了。然后访问http://localhost/dvwa/login.php,默认账号admin,密码password。登录进去之后,左侧菜单能点开SQL Injection、XSS、File Upload这些模块,说明环境彻底跑通了。

有件事得提一嘴。DVWA默认安全等级是low,所有漏洞都是敞开的。如果你只是本地练手,无所谓。但要是把这套东西放到局域网里给同事演示,记得去DVWA Security页面把等级调到medium或high。我见过有人开着low级别在办公网里跑了一周,被安全扫描器扫到,IT部门直接找上门。

另外,PHP版本别乱升。XAMPP 8.x自带的PHP 8.2跑DVWA 1.10会出问题,具体表现是setup页面能过,但登录后部分模块报Fatal error。要么降级XAMPP,要么去DVWA的GitHub issues里找补丁。我选前者,省时间。

整套流程下来,快的话十五分钟。慢的话,卡在端口冲突或者PHP扩展没开。XAMPP的php.ini里,extension=mysqli和extension=gd这两行默认是注释掉的,手动去掉前面的分号,重启Apache。gd扩展不开启的话,DVWA的验证码模块会挂掉,登录页显示不出CAPTCHA图片。

最后说个观察。Windows上搭DVWA,最大的坑不是技术难度,是路径里的空格和中文。XAMPP装在C:\Program Files下面,Apache大概率起不来。htdocs路径里带中文,PHP的include会找不到文件。所以安装路径越干净越好,C:\xampp是黄金标准。

    热门排行

    友情链接