首页 > 技术文章 > 搭建DVWA Web渗透测试靶场

amnotgcs 2020-01-31 01:15 原文

文章更新于:2020-04-13
按照惯例,需要的文件附上链接放在文首。

文件名:DVWA-1.9-2020.zip
文件大小:1.3 M
文件说明:这个是新版 v1.9 (其实是 v1.10开发版),下面那个文件是1.0版
下载地址:https://ww.lanzous.com/ibbnj7g
SHA256: A9435F97E92EED93D3374FC7BD389F8F3C34CD849C536E19CBF33521AC77B7A7

文件名:DVWA-1.0.zip
文件大小:1.3 M
下载链接:https://ww.lanzous.com/ibbni9c
SHA256: 548A17143913D116AB0614F4AB1ACCE10E5A3CD707834801548B9730739EA070

一、下载 DVWA 环境源码

DVWA 基于web 服务器环境的,关于如何搭建 web 服务器,各位煤老板看一下文末的链接。

1、进入 DVWA 的官网

官网 http://www.dvwa.co.uk/ 页面拉到最下面有下载按钮(链接到GitHub)。
或直接使用文首链接。

官方v1.0版下载链接:https://codeload.github.com/ethicalhack3r/DVWA/zip/master
官方v1.9版下载地址:https://codeload.github.com/ethicalhack3r/DVWA/zip/v1.9

段一图一dvwa官网

2、点击之后即可下载如下图,

段一图二DVWA源码

二、配置 DVWA 环境

1、下载之后将其解压,复制到网站根目录下

段二图一打开网站根目录

2、配置数据库密码

先将 //www/DVWA-master/configure/ 中的 configure.inc.php.disc 去掉 .disc 后缀或拷贝一份去掉后缀
然后将 configure/configure.inc.php 文件中的数据库信息修改为如下图(也就是配置数据库密码):
段二图二更改数据库密码

3、然后浏览器访问 http://localhost/DWWA-master

段二图三浏览器访问

4、修复问题

如果页面中出现红字,说明有一些问题,比如:
段二图四出现错误

5、修改配置文件

如出现 PHP function allow_url_include: Disabled 需要修改php配置文件的 php.ini
将php安装路径下php的配置文件 php.ini 中 allow_url_include 值改为on

注1:是你安装的php目录下的php.ini 不是你DVWA目录下的。
注2:Linux 修改之后需要重启 php以生效。

段二图五修改php.ink

6、修改之后重启 Apache 或 Nginx 生效

段二图六重启web生效

7、如果出现 reCAPTCHA:Missing 字样

需要在 configure/configure.inc.php中配置两个量
段二图七修改配置文件

配置$_DVWA[ 'recaptcha_public_key' ] = '6LdK7xITAAzzAAJQTfL7fu6I-0aPl8KHHieAT_yJg';
配置$_DVWA[ 'recaptcha_private_key' ] = '6LdK7xITAzzAAL_uw9YXVUOPoIHPZLfw2K1n5NVQ';
然后刷新页面即可。
段二图八刷新成功

8、创建数据库

段二图九创建数据库

9、如果数据库软件没打开,会出现无法连接提示

段二图A数据库创建失败

10、创建数据库成功

段二图B创建数据库成功

11、补充:关于 php 的版本问题

如果你 dvwa 使用的是 v1.0 的源码,可能会有因为 php 创建数据库失败的可能。

在上述版本中,源码使用的是 mysql 函数来连接数据库,而在php 高版本比如 7.0 中则废弃了这一语法改用 mysqli
所以如果你点击创建数据库没有反应或者白屏,你可以检查你的 web 服务器错误日志,如果是说调用了未定义的函数则是此原因。

解决办法:
1、改用低版本 php 比如 5.x
2、使用最新的源码(去 Github上下载,不到 2 MB)。
3、使用最新的源码,文首蓝奏链。

三、登录使用靶场

1、使用默认账号密码登录

数据库创建成功以后会自动跳转登录页面,有五个默认账号密码,选一组登录即可。

段三图一登录靶场

2、进入主页面

登录之后如图所示,左边是靶场漏洞的菜单,点击之后右边会显示相应的环境:
段三图二登录成功

3、查看题目源代码

段三图三查看源代码

4、查看题目帮助

段三图四查看题目帮助

5、设置题目难度级别

段三图五设置题目难度级别

6、重置数据库

段三图六重置数据库

7、修复中文乱码问题

如果出现中文乱码问题,可修改配置文件中的编码方式
段三图七中文乱码问题

中文乱码问题:DVWA -> dvwa -> includes,找到 dvwaPage.inc.php 文件将所有的utf-8 改为 gb2312 或 GBK 即可

段三图八更改编码模式

9、验证乱码问题

再次查看的时候,已经没有乱码问题。
段三图九乱码解决

四、Enjoy!!

注:
1、搭建 web 环境参见: Windows&linux使用集成环境搭建 web 服务器
2、搭建 sqli SQL注入环境参见: 搭建 sqli SQL注入练习靶场
3、web 方向 CTF 参见: Wirte-up:攻防世界Web解题过程新手区01-06

推荐阅读