DVWA | 多种方法搭建DVWA靶场

一、简介

Damn Vulnerable Web App (DVWA) 是一个非常容易受到攻击的 PHP/MySQL Web 应用程序。其主要目标是帮助安全专业人员在法律环境中测试他们的技能和工具,帮助 Web 开发人员更好地了解保护 Web 应用程序的过程,并帮助教师/学生在课堂环境中教授/学习 Web 应用程序安全性。

官网:http://www.dvwa.co.uk/

GitHub:https://github.com/digininja/DVWA

二、环境搭建

2.1、Linux环境下搭建

2.1.1、使用LAMP环境搭建

LAMP的意思是:Linux+Apache+MySQL+PHP

1、安装Apache

yum -y install httpd

image-20250116224951846

2、修改Apache配置文件httpd.conf将125行的none改为all,并重启服务

vim /etc/httpd/conf/httpd.conf
systemctl restart httpd

image-20250116225320941

3、浏览器访问是否成功,如果访问失败可以使用以下命令关闭防火墙后再次尝试

systemctl stop firewalld

image-20250116225950606

4、安装Mariadb

yum -y install mariadb-server mariadb	#安装Mariadb
systemctl restart mariadb.service	#重启服务

image-20250116230226496

5、初始化数据库

mysql_secure_installation

进去之后直接回车,然后输入密码,后面全都直接回车

image-20250116230806912

6、安装PHP

yum -y install php

image-20250116230927204

7、安装PHP组件,使php支持Mariadb

yum -y install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

image-20250116231009524

8、重启Apache、MariaDB,并在Apache根目录下创建PHP文件测试是否搭建成功。

systemctl restart httpd		#重启Apache
systemctl restart mariadb	#重启MariaDB

/var/www/html目录下创建test.php文件,内容如下

<?php
phpinfo();
?>

image-20250116231541787

9、浏览器访问http://YOUIP/test.php显示如下界面表示创建成功

image-20250116231715952

10、将下载好的DVWA压缩包上传到/var/www/html目录下解压并重新命名为DVWA

unzip DVWA-master.zip -d /var/www/html/
mv DVWA-master DVWA

image-20250116233254905

11、在数据库里面创建一个库给DVWA

mysql -uroot -p
create database dvwa;
grant all on dvwa.* to dvwa@localhost identified by '123456';
flush privileges;
exit

image-20250116233526843

12、在/var/www/html/DVWA/config目录下修改DVWA配置文件

cp config.inc.php.dist config.inc.php
vi config.ini.php

修改这段代码对应自己数据库相应的内容

#See README.md for more information on this.
$_DVWA = array();
$_DVWA[ 'db_server' ]   = 'localhost';
$_DVWA[ 'db_database' ] = 'dvwa';
$_DVWA[ 'db_user' ]     = 'dvwa';
$_DVWA[ 'db_password' ] = '123456';
$_DVWA[ 'db_port']      = '3306';

#You'll need to generate your own keys at: https://www.google.com/recaptcha/admin
$_DVWA[ 'recaptcha_public_key' ]  = '6LdJJlUUAAAAAH1Q6cTpZRQ2Ah8VpyzhnffD0mBb';
$_DVWA[ 'recaptcha_private_key' ] = '6LdJJlUUAAAAAM2a3HrgzLczqdYp4g05EqDs-W4K';

image-20250116235627647

13、浏览器访问http://YOUIP/DVWA/setup.php,可以看到我们还有一些问题需要处理(状态为红色,表示在尝试完成某些模块时会出现问题)。

Versions of PHP below 7.x are not supported, please upgrade.
PHP function display_errors: Disabled
PHP function display_startup_errors: Disabled
PHP function allow_url_include: Disabled
Writable folder /var/www/html/DVWA/hackable/uploads/: No
Writable folder /var/www/html/DVWA/config: No

image-20250117230600335

14、处理Versions of PHP below 7.x are not supported, please upgrade.

升级PHP版本到7.X

#查看已安装的php的所有包
yum list installed | grep php
#卸载上述包
yum remove php*
#换下载源为remi
yum install epel-release
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
#安装php7.4以及一些扩展包
yum -y install php74-php-devel php74-php.x86_64 php74-php-cli.x86_64 php74-php-common.x86_64 php74-php-gd.x86_64 php74-php-ldap.x86_64 php74-php-mbstring.x86_64 php74-php-mcrypt.x86_64 php74-php-pdo.x86_64 php74-php-mysqlnd php74-php-fpm php74-php-opcache php74-php-pecl-redis php74-php-pecl-mongodb
#启动php7.4命令
systemctl start php74-php-fpm

image-20250117175546421

15、处理PHP function display_errors: DisabledPHP function display_startup_errors: DisabledPHP function allow_url_include: Disabled

修改/etc/opt/remi/php74下的php.ini文件(如果不知道文件位置可以参考上面步骤8创建test.php文件查看文件位置)。

display_errorsdisplay_startup_errorsallow_url_include全部由Off修改为On

image-20250117231627450

image-20250117231705405

16、处理Writable folder /var/www/html/DVWA/hackable/uploads/: NoWritable folder /var/www/html/DVWA/config: No

/var/www/html/DVWA/hackable/uploads/是文件上传存放的地方,没有写权限(w),给其权限就可以了

chmod 777 /var/www/html/DVWA/hackable/uploads/

image-20250118010111843

/var/www/html/DVWA/config同理

chmod 777 /var/www/html/DVWA/config/

17、点击最下方的Create/Reset Database

image-20250118020653269

18、可以开始使用了,账号密码:admin/password

image-20250116235831401

PS:如果不想每次开机都重启服务,可以设置开机自启

systemctl enable httpd				#设置开机自启Apache
systemctl enable mariadb.service	#设置开机自启MariaDB

2.1.2、使用docker搭建

1、安装docker

yum -y install docker

image-20250117000514508

2、安装docker-compose

方法一:

 yum -y install epel-release
 yum -y install python3-pip
 pip3 install docker-compose

方法二:

sudo curl -L "https://github.com/docker/compose/releases/download/1.27.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

安装完成后查看版本

docker-compose --version

image-20250117001107315

若是出现错误-bash: /usr/local/bin/docker-compose: Permission denied

输入chmod +x /usr/local/bin/docker-compose 即可。

3、启动docker并下载容器

PS:容器下载失败看这里:

docker镜像爬取失败解决方法

这些方法拯救你的Docker

systemctl start docker
docker pull vulnerables/web-dvwa

image-20250117004506893

4、查看并启动容器

docker images
docker run -d -p 8080:80 ab

image-20250117004719285

5、登录

浏览器访问http://YOUIP:8080账号密码:admin/password,可以愉快的玩耍了。

image-20250117004925848

2.2、Windows环境下搭建

2.2.1、使用小皮面板安装

1、官网下载小皮面板并安装

**官网:**https://www.xp.cn/

2、安装完小皮面板并下载 DVWA 后,将下载的 DVWA 文件解压放入小皮面板安装目录下的 www 文件夹中

image-20250117010259455

3、修改配置文件config.inc.php

打开DVWA下的config文件夹,有一个config.inc.php.dist文件,将此文件复制一份重新命名为config.inc.php

打开config.inc.php文件,将数据库的密码修改为小皮面板中数据库的密码,并配置reCAPTCHA key

$_DVWA = array();
$_DVWA[ 'db_server' ]   = '127.0.0.1';
$_DVWA[ 'db_database' ] = 'dvwa';
$_DVWA[ 'db_user' ]     = 'root';
$_DVWA[ 'db_password' ] = '123456';
$_DVWA[ 'db_port']      = '3306';

这个 reCAPTCHA key 可以访问 https://www.google.com/recaptcha/admin/create 来生成

$_DVWA[ 'recaptcha_public_key' ]  = '6LdJJlUUAAAAAH1Q6cTpZRQ2Ah8VpyzhnffD0mBb';
$_DVWA[ 'recaptcha_private_key' ] = '6LdJJlUUAAAAAM2a3HrgzLczqdYp4g05EqDs-W4K';

image-20250117013404155

4、浏览器访问http://127.0.0.1/DVWA,点击最下方的Create/Reset Database

image-20250117012309736

5、默认账户和密码 admin/password,登录后就可以愉快的玩耍了

image-20250117012330603

要在Linux上安装DVWA,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装了Apache、MySQL和PHP。可以使用以下命令进行安装: ``` sudo apt-get install apache2 sudo apt-get install mysql-server sudo apt-get install php7.2 sudo apt-get install libapache2-mod-php7.2 sudo service apache2 restart ``` 2. 下载最新的DVWA压缩包,并将其解压到Apache的Web目录下。您可以使用以下命令进行操作: ``` cd /var/www/html sudo wget https://github.com/ethicalhack3r/DVWA/archive/master.zip sudo unzip master.zip sudo mv DVWA-master dvwa sudo chown -R www-data:www-data /var/www/html/dvwa/ sudo chmod -R 755 /var/www/html/dvwa/ ``` 3. 配置DVWA的数据库。首先,登录到MySQL控制台: ``` mysql -u root -p ``` 然后创建一个名为"dvwa"的数据库,并授权给用户"dvwa": ``` create database dvwa; grant all on dvwa.* to 'dvwa'@'localhost' identified by 'dvwa'; flush privileges; exit; ``` 4. 将DVWA的配置文件从config.inc.php.dist复制为config.inc.php,并更新数据库相关的配置: ``` cd /var/www/html/dvwa/config sudo cp config.inc.php.dist config.inc.php sudo nano config.inc.php ``` 在文件中找到以下行,将其中的信息更新为前面设置的数据库信息: ``` $_DVWA['db_user'] = 'dvwa'; $_DVWA['db_password'] = 'dvwa'; $_DVWA['db_database'] = 'dvwa'; ``` 保存更改并退出编辑器。 5. 最后,通过在Web浏览器中输入"http://localhost/dvwa"来访问DVWA,并按照安装向导进行设置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值