资讯动态

如何用DVWA-Chinese从零入门Web安全?完整部署与实战指南

发布时间:2026/8/17 21:05:06 来源:尧图企业网站定制
如何用DVWA-Chinese从零入门Web安全完整部署与实战指南【免费下载链接】DVWA-ChineseDVWA全汉化版本项目地址: https://gitcode.com/gh_mirrors/dv/DVWA-Chinese第一次做安全测试最怕的不是找不到漏洞而是把环境搞崩、把电脑搞瘫。想在本地搭一个带漏洞的网站练手又担心误装到公网惹出麻烦想对照源码学习防御又困在满屏英文里看得头大。如果你正卡在这里DVWA-Chinese 或许就是你的突破口。DVWA-Chinese 是一款完全汉化的漏洞靶场一个故意写满了漏洞的 PHP/MySQL 网站专门用来在合法、隔离的环境里练习 Web 安全攻防。本文会带你认识它、把它跑起来、亲手打一次 SQL 注入再帮你绕开新手最容易踩的坑。为什么安全学习需要一个有漏洞的靶场学习 Web 安全最大的难题是没有练习对象。你不能拿别人的网站练手那既不道德也不合法在自建的生产系统上试又怕一个误操作把数据毁了。漏洞靶场就是这个问题的标准答案它是一块安全沙盘里面所有漏洞都是开发者故意埋下的页面、数据库、源码全部敞开给你看。DVWA-Chinese 正是在经典开源项目 DVWA 的基础上做了彻底汉化菜单、提示、帮助文档、源码注释都变成了中文。你不需要先过英语关就能把注意力集中在漏洞是怎么产生的这件事上。重要提醒DVWA-Chinese 是一个故意不安全的应用。请务必把它部署在虚拟机或本地隔离环境里不要放到云服务器的公开目录也不要放在面向公网的服务器上否则你的机器很快会被攻破。DVWA-Chinese 是什么一个漏洞动物园如果把它比作一座动物园DVWA-Chinese 就是专门饲养漏洞的场馆——每个笼子都关着一种真实的 Web 漏洞门口还贴着中英对照的说明牌。它的核心能力可以归纳成三件事能力说明四大安全等级同一漏洞提供 low / medium / high / impossible 四级从裸奔到铜墙铁壁十余种真实漏洞SQL 注入、XSS反射/存储/DOM、文件上传、命令注入、CSRF 等源码全开放每个漏洞页面都能一键查看源码对比脆弱代码与安全代码登录后的主菜单里漏洞清单一目了然爆破、命令注入、CSRF、文件包含任意文件上传、不安全的验证码数据库注入、数据库盲注、弱会话 IDDOM/反射/存储型 XSS、CSP 绕过、JavaScript 攻击每个模块都配了独立的帮助文档在各模块的help/help.php连漏洞原理都讲得明明白白。最短上手路径5 步跑起你的中文靶场老规矩先给结论一次能成功的安装只需要装环境 → 放代码 → 改配置 → 初始化数据库 → 登录这五步。第 1 步准备好 Web 环境DVWA-Chinese 是 PHP MySQL 应用最简单的组合是 XAMPP自带 Apache、MySQL、PHP。Debian 系 Linux如 Ubuntu、Kali也可以直接用系统包sudo apt-get -y install apache2 mariadb-server php php-mysqli php-gd libapache2-mod-php如果你的 MySQL 是新版本登录 setup 页可能报错#2054 authentication method unknown。最快的解法是换用 MariaDB或者把数据库用户改为mysql_native_password认证方式。第 2 步获取代码并放入站点目录git clone https://gitcode.com/gh_mirrors/dv/DVWA-Chinese然后把项目放到 Web 服务器根目录XAMPP 是htdocsLinux 是/var/www/html。第 3 步配置数据库连接cd DVWA-Chinese/config cp config.inc.php config.inc.php.backup编辑config/config.inc.php把数据库信息改成你的环境$_DVWA[ db_server ] 127.0.0.1; $_DVWA[ db_database ] dvwa; $_DVWA[ db_user ] dvwa; $_DVWA[ db_password ] pssw0rd;注意如果你用的是 MariaDB不能用 root 账号需要先为 DVWA 单独建一个用户并授权。配置文件里的db_database在初始化时会被整个清空重建请务必使用专用于 DVWA 的数据库。第 4 步初始化数据库浏览器访问http://localhost/DVWA-Chinese/setup.php页面会先做一轮初始化检查把 PHP 模块、目录写权限等逐项列成绿/红状态。确认没大问题后点一下创建 / 重置数据库按钮即可。如果某几项是红色通常对应这些处理allow_url_fopen和allow_url_include关系到文件包含模块需在php.ini中开启hackable/uploads/目录需要可写否则文件上传模块用不了。第 5 步登录并开始默认账号密码是admin / password没错这本身就是一次弱口令演示。登录后进入安全等级设置页面把等级切到 low就可以开始第一轮练习了。深挖一层亲手打一次 SQL 注入光会搭建不算会用。下面我们用最简单的 SQL 注入模块vulnerabilities/sqli/走一遍完整流程你会真切感受到四档难度设计的精妙。第一回合low 难度直接注入在 ID 输入框输入1页面会返回 ID1 用户的姓名。输入1 or 11猜猜会发生什么所有用户都显示出来了——因为 low 难度下的查询是这样的$query SELECT first_name, last_name FROM users WHERE user_id $id;;你的输入被原样拼进 SQL 语句11恒为真条件直接失效。这就是 SQL 注入最朴素的样子把输入变成代码执行。第二回合切到 impossible看教科书答案把安全等级切到 impossible再输入同样的 payload。你会发现注入完全不生效了因为代码改成了参数化查询$data $db-prepare( SELECT first_name, last_name FROM users WHERE user_id (:id) LIMIT 1; ); $data-bindParam( :id, $id, PDO::PARAM_INT );输入被当作纯数据绑定永远无法改变 SQL 结构。再配合 CSRF token 校验这一档对 SQL 注入而言基本是免疫的。进阶挑战盲注初体验明着注入会了试试盲注vulnerabilities/sqli_blind/。它不返回查询内容只回答有/没有。low 档源码里注入1 and 11返回存在此用户 ID换成1 and 12就返回找不到此 ID。用布尔差异逐位猜出数据库内容这就是经典盲注手法也是后面用工具自动化攻击的基础。新手最容易踩的 5 个坑安装和练习过程中下面这些问题出现频率最高。按问题—原因—解法三段式给你备好答案。问题一setup 页面提示无法连接数据库原因config/config.inc.php里的账号密码与数据库不一致或数据库服务没启动。 解法先用命令行验证mysql -u dvwa -ppssw0rd -D dvwa能否连上连不上就检查服务是否运行sudo service mysql start连得上就回头核对配置文件。问题二报错Unknown authentication method原因新版 MySQL 默认用了 PHP 不认识的新认证插件。 解法换成 MariaDB或在 MySQL 配置的[mysqld]段加default-authentication-pluginmysql_native_password再重建 DVWA 用户。问题三上传功能一直失败原因hackable/uploads/目录不可写。 解法把该目录的写权限交给 Web 服务器用户并检查 PHP 的upload_max_filesize是否过小。问题四SQL 注入模块怎么打都不生效原因PHP 5.2.6 或某些默认配置把magic_quotes_gpc打开了输入被自动转义。 解法在.htaccess或php.ini里关掉magic_quotes_gpc新版 PHP 已移除该开关升级到 7.x 更省心。问题五中间某个漏洞练不了检查项是红色原因DVWA 的初始化检查页已经告诉你缺什么了。 解法逐个对照——allow_url_include影响文件包含、gd模块影响验证码、目录写权限影响上传。页面上的红字就是诊断报告照着改即可。下一站从能打到会防跑通基础后接下来的学习路线可以这样走第一周把每个模块的 low 难度过一遍重点看查看源码理解每种漏洞的成因。四个等级的实现差异就藏在各模块source/目录下的low.php到impossible.php里逐一对比是最快的成长方式。第二周挑战 medium 和 high练习绕过过滤。比如用大小写、编码、双写等方式绕过字符黑名单顺便把 XSS 的反射型、存储型、DOM 型三种玩法区分清楚。第三周研究 impossible 级别的安全实现——参数化查询、CSRF Token、内容过滤把这些标准答案内化成自己写代码时的肌肉记忆。每个模块的help/help.php都写好了原理与提示docs/目录下还有官方文档 PDFdocs/DVWA_v1.3.pdf可供查阅。安全学习的目的从来不是学会攻击而是看懂漏洞、修掉漏洞。DVWA-Chinese 把这条路的门槛降到了最低——全中文、四档难度、源码全开。现在就动手克隆仓库、部署环境、用三分钟把靶场跑起来然后从 SQL 注入的第一个 payload 开始你的 Web 安全之旅。【免费下载链接】DVWA-ChineseDVWA全汉化版本项目地址: https://gitcode.com/gh_mirrors/dv/DVWA-Chinese创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价