Centos8中安装配置DVWA靶场环境详细流程

news2024/12/27 0:04:19

一、准备内容

本文在Centos8中安装配置DVWA靶场,该靶场启动需具备【Linux+Apache+Mysql+Php】四大环境:所以在后续的安装配置DVWA靶场时遇到问题首先需要排查Apache、Mysql、Php这三大环境是否正常启动(若不能正常启动则需逐一排查解决)

1.1、DVWA的环境配置包

有两种方式准备DVWA的环境配置包:

方式一:准备【Apache】、【Mysql(Mariadb)】、【php】的yum命令安装

序号

名称

yum安装命令

1

Apache

yum install -y httpd

2

Mysql

yum -y install mariadb-server

3

PHP

Centos8中安装配置php

注意:其中数据库建议安装mariadb

Centos8安装软件提示为 repo ‘appstream‘ 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlist解决办法

方式二:使用DVWA官方推荐的XAMPP进行统一安装【Apache】、【Mysql】、【php】内容安装

名称

下载地址

XAMPP安装包

https://www.apachefriends.org/download.html

1.2、DVWA的靶场包

序号

名称

链接

1

DVWA官网

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

2

DVWA靶场

https://codeload.github.com/ethicalhack3r/DVWA/zip/master

1.3、我这里提供的DVWA资源包下载

DVWA资源包包含Linux和Windows平台下的XAMPP8.0.25,8.1.12&8.2.0版本安装包

二、安装DVWA环境

本文使用官方推荐的XAMPP包进行环境的配置,具体操作流程如下:

2.1、下载XAMPP包进行安装

2.1.1、登陆Centos8并且切换到root用户下

2.1.2、切换到 usr或opt目录后下载XAMPP包

比如我这里下载【8.2.0 / PHP 8.2.0】版本的XAMP则如下图所示:(根据自身需求下载对应版本)

#XAMPP包下载命令
wget https://nchc.dl.sourceforge.net/project/xampp/XAMPP%20Linux/8.2.0/xampp-linux-x64-8.2.0-0-installer.run

2.1.3、查看当前目录下的文件,检查XAMPP包是否下载

检查是否含有名为【xampp-linux-x64-8.2.0-0-installer.run】的文件,如下图所示:

2.1.4、安装XAMPP包

#给XAMPP包赋予执行权限命令
chmod a+x xampp-linux-x64-8.2.0-0-installer.run
#执行当前目录下的文件命令
./文件名
./xampp-linux-x64-8.2.0-0-installer.run

2.2、下载DVWA靶场包配置

2.2.1、切换到 usr或opt目录后下载DVWA包

#下载DVWA靶场包命令
wget https://codeload.github.com/ethicalhack3r/DVWA/zip/master

2.2.2、查看当前目录下的文件,检查DVWA包是否下载

检查是否含有名为【master】的文件,如下图所示:

2.2.3、复制DVWA包到Apache主目录

将下载好的DVWA包【master】复制到Apache的主目录【/var/www/html/】下,如下图所示:

#复制命令
cp -r 源 目的

#比如我想把当前目录下的[master]文件复制到【/var/www/html/】目录下命令为:
cp master /var/www/html/

2.2.4、将DVWA文件解压

①进入到Apache的主目录

进入Apache主目录的命令为:
cd /var/www/html/

②在Apache的主目录下解压DVWA文件

#解压.zip文件命令
unzip 文件名

#比如我这里需要解压master文件的命令为:
unzip master

2.2.5、重命名解压后DVWA文件为dvwa

①修改当前Apache主目录下解压后的DVWA文件【DVWA-master】

#修改文件、或夹名称命令
mv 当前需修改的文件或文件夹名称 需要修改为的文件或文件夹名称

#修改DVWA文件DVWA-master为dvwa命令
mv DVWA-master dvwa

②修改名称后查看当前Apache主目录下的所有文件

2.3、验证Apache是否成功安装启动

①添加Apache防火墙的端口

#添加Apache防火墙的默认端口【80】命令
firewall-cmd --zone=public --add-port=80/tcp --permanent

#重启防火墙命令
firewall-cmd --reload

#查看当前开放的防火墙端口命令
firewall-cmd --list-port

②按照如上的命令添加完成Apache防火墙端口的命令后;在浏览器中输入【DVWA所部署在的Centos服务器IP:端口】即可查看Apache是否成功安装启动(我这里使用的的Apache地址是8091)

注意:在浏览器中查看到的结果和上图不一样,则表示部署的Apache没有启动,则可以参照 Centos8中Apache服务无法启动原因排查——Apache默认端口被占用链接排查。

2.4、查看DVWA靶场

前提是:Apache已经正常启动。

①在浏览器中输入【DVWA所部署在的Centos服务器IP:端口/dvwa】查看DVWA靶场显示异常(比如:http://192.168.146.138:8091/dvwa/)后如下图报错【DVWA Sytem error - config file not found . Copy config/config.inc.php.dist to config/config.inc.php and configure to your environment.】错误

解决该错误方法为:

#1-进入Apache主目录下dvwa的config文件夹下
cd /var/www/html/dvwa/config/

#2-去除Apache主目录下dvwa的config文件夹下[config.inc.php.dist]的.dist后缀
mv config.inc.php.dist config.inc.php

②再次在浏览器中输入【DVWA所部署在的Centos服务器IP:端口/dvwa】查看DVWA靶场则正常(比如:http://192.168.146.138:8091/dvwa/)后正常如下图:

注意:如果此次在浏览器中输入【DVWA所部署在的Centos服务器IP:端口/dvwa】查看DVWA没有如上图所示显示正常网页,而是显示文件名称内容信息,则表示Php没有安装,需要配置PHP环境。

2.5、安装配置PHP

安装配置PHP环境请参照《Centos8中安装配置php》链接进行操作,正常安装配置完成PHP后,在浏览器中输入【DVWA所部署在的Centos服务器IP:端口/dvwa】查看DVWA靶场则如【2.4、查看DVWA靶场】中②显示的图片或如下图才是正确的。

DVWA账号

DVWA密码

admin

password

三、配置DVWA

3.1、将DVWA的安装检查项都配置为绿色

进入DVWA的【Setup / Reset DB】界面查看发现有一些内容是红色的(红色内容表示不符合安装要求的,需要修改配置内容)如下图所示:

3.1.1、解决【PHP function allow_url_include: Disabled】报红

#编辑php.ini文件的allow_url_include为On命令
vim /etc/php.ini

3.1.2、解决【reCAPTCHA key: Missing】报红

编辑dvwa靶场的config文件下的【config.inc.php】文件,如下图所示

#1-打开dvwa靶场的配置文件命令
vim /var/www/html/dvwa/config/config.inc.php

#2-按下键盘[i]键移动光标编辑,编辑完成后按下【ESC】键退出编辑,最后输入【:wq】保存退出
$_DVWA[ 'recaptcha_public_key' ]  = '6LdK7xITAAzzAAJQTfL7fu6I-0aPl8KHHieAT_yJg';
$_DVWA[ 'recaptcha_private_key' ] = '6LdK7xITAzzAAL_uw9YXVUOPoIHPZLfw2K1n5NVQ';

3.1.3、解决【uploads、config】文件夹和【phpids_log.txt】文件报红

#给文件所有者设置可读可写可执行权限命令
chomd u+rwx 文件夹或文件

#或者直接使用给所有人都设置可读可写可执行权限命令
chomd 777 文件夹或文件

注意1:我这里是测试环境所以直接使用了给所有人都设置可读可写可执行权限命令;生产环境需要根据自身情况设置。

注意2:如果进行了以上的内容设置后,但是【uploads、config】文件夹和【phpids_log.txt】文件依旧显示No报红(这是由于Linux的SELinux安全限制),则需要执行如下命令即可:

setsebool -P httpd_unified 1

或者也可以直接关闭SELinux

序号

说明

命令

1

临时关闭SELinux重启系统后还会开启。

setenforce 0

2

永久关闭SELinux

vim /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出

以上都设置完成后DVWA的安装检查项都配置为绿色图如下所示:

3.2、Create / Reset Database

前提:Setup Check的检查项都为绿色后在操作

《1》点击【Create / Reset Database】后如下图所示:如果出现【Could not connect to the database service.Please check the config file】错误,则进行如下操作:

3.2.1、检查mariadb数据库是否启动

①启动mysql数据库

#启动mysql数据库命令
systemctl start mysql.service

如果执行该启动数据库命令报错【Failed to start mysql.service:Unit mysqld.service not found.】

②解决启动mysql数据库报错问题步骤

#1-安装mariadb数据库命令
yum -y install mariadb  mariadb-devel  mariadb-server

#2-启动mariadb数据库
systemctl start mariadb.service

#3-添加mariadb数据库到开机启动
systemctl enable mariadb.service

详细的mariadb数据库安装教程请参考《Centos8安装配置Mariadb数据库》

③在mariadb数据库中创建dvwa数据库和账号且允许远程访问

#1-使用root账号登陆mariadb数据库
mysql -uroot -p

#2-创建名为dvwa的数据库命令
create database dvwa;

#3-创建名为dvwa且密码为dvwa的远程访问账号命令
create user 'dvwa'@% identified by 'dvwa';

#4-只给192.168.146.153主机使用dvwa账号密码远程访问mariaDB的dvwa库的权限命令
grant all privileges on dvwa.* to 'dvwa'@'192.168.146.153' identified by 'dvwa' with grant option;

#5-授权后必须刷新才起效
flush privileges;

3.2.2、修改DVWA配置文件的数据库内容

#编辑DVWA靶场中配置文件的数据库内容命令
vim /var/www/html/dvwa/config/config.inc.php
#1-查看mariadb数据库的状态命令
systemctl status mariadb

#2-启动mariadb数据库的命令
systemctl start mariadb

#3-停止mariadb数据库的命令
systemctl stop mariadb

#4-重启mariadb数据库的命令
systemctl restart mariadb

3.2.3、解决【Connect DATABASE Error TYPE: 2002: Permission denied】错误

#解决【Connect DATABASE Error TYPE: 2002: Permission denied】错误命令
setsebool -P httpd_can_network_connect_db 1

3.2.4、开放mariadb数据库的防火墙端口

#1-开启mariadb数据库的防火墙3306端口
 firewall-cmd --zone=public --add-port=6379/tcp --permanent
 
#2-重启防火墙
 firewall-cmd --reload

#3-查看防火墙的端口哪些是打开的
firewall-cmd --list-port

3.2.5、成功创建或重置DVWA的数据库

点击【Create / Reset Database】后成功创建DVWA的效果如下:

到这里就可以正常的使用DVWA靶场进行网络安全内容的测试了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/194595.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

漏洞深度分析|CVE-2023-24162 hutool XML反序列化漏洞

项目介绍 Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。 Hutool中的工具方法来自每个用户的精雕细琢&#x…

ARP攻击

一、ARP1.1、ARP介绍地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址(MAC地址)的一个TCP/IP协议.每台主机都设有一个ARP高速缓存,里面有本局域网上的主机和路由器的…

优思学院|六西格玛团队缺乏方向感怎么办?原因是...

团队方向感是一个六西格玛项目成功的关键因素。它确保团队成员有共同的目标,清晰的任务分配,以及明确的行动计划。有了方向感,团队成员可以有效地利用自己的才能和知识,共同努力实现团队的目标。团队方向感不仅有助于提高团队的效…

4种通过iframe跨域与其他页面通信的方式

目录 4种通过iframe跨域与其他页面通信的方式 location.hash window.name postMessage document.domain降域 4种通过iframe跨域与其他页面通信的方式 location.hash 在url中,http://www.baidu.com#helloword的#helloworad就是location.hash,改变has…

SpringMVC之bean加载控制

目录 一:问题分析 二:思路分析 三:环境准备 四:设置bean加载控制 知识点1:ComponentScan 一:问题分析 入门案例的内容已经做完了,在入门案例中我们创建过一个SpringMvcConfig的配置类&#x…

Redis如何实现分布式锁?

📢📢📢📣📣📣 哈喽!大家好,我是【一心同学】,一位上进心十足的【Java领域博主】!😜😜😜 ✨【一心同学】的写作风格&#x…

OpenMMLab学习笔记(一)

OpenMMLab学习笔记(一) day01 计算机视觉与OpenMMLab开源算法体系 1. 基本知识 计算机视觉的基础任务:分类、分类和定位、物体检测、分割(语义分割、实例分割),其中实例分割统一种类索引不同 注意语义分…

indexedDB存储

一、概述 随着浏览器的功能不断增强,越来越多的网站开始考虑,将大量数据储存在客户端,这样可以减少从服务器获取数据,直接从本地获取数据。 现有的浏览器数据储存方案,都不适合储存大量数据:Cookie 的大小…

rocketmq 笔记

cap理论 Consistency(一致性)Availability(可用性)Partition tolerance(分区容忍性) ①一致性:对于客户端的每次读操作,要么读到的是最新的数据,要么读取失败。换句话说…

ElasticSearch -- Prometheus+Grafana监控

向导介绍部署Prometheus配置Grafana下载仪表盘导入仪表盘报警核心指标集群健康和节点可用性主机级别的系统和网络指标JVM内存和垃圾回收搜索和索引性能资源饱和度注册自动重启介绍 Prometheus官方提供了ES的exporter:EsExporter Github地址:elasticsea…

【Vue】Vue不同版本的基本使用

一、Vue的版本 1. Vue1.x几乎被淘汰&#xff0c;不再建议学习与使用。2. Vue2.x<scriptsrc"" target"_blank">https://cdn.jsdelivr.net/npm/vue2.6.14"></script>3. Vue3.x<scriptsrc"" target"_blank">ht…

【IO异常】HTTP请求报错Error writing to server

报错信息如下&#xff1a; [2023-01-04 13:36:02.185]-ERROR-[biz:aplus-task-oms1060189862335877121][sys:aplus-cms-tran1060189866052390912][com.phfund.aplus.cms.tran.module.counter.service.impl.OcrServiceImpl-102][调用远程服务发送文件异常:] cn.hutool.http.Http…

一、HTML5

文章目录一、HTML5二、html5的基本结构三、基本标签四、HTML常用标记4.1 文本标题(h1-h6)4.2 段落文本p4.4 空格4.5 换行 br4.6 水平线4.7 加粗标记4.8 倾斜4.9 扩展4.10 列表4.10.1 ul 无序列表4.10.2 ol 有序列表4.10.3 dl 自定义列表五、块级标签、行级标签一、HTML5 H5是H…

洛谷 P1886 滑动窗口 /【模板】单调队列

滑动窗口 /【模板】单调队列 题目描述 有一个长为 nnn 的序列 aaa&#xff0c;以及一个大小为 kkk 的窗口。现在这个从左边开始向右滑动&#xff0c;每次滑动一个单位&#xff0c;求出每次滑动后窗口中的最大值和最小值。 例如&#xff1a; The array is [1,3,−1,−3,5,3,…

辨别三星内存条的真假

目录前言一、三星内存为什么水深&#xff1f;二、通过物理手段辨别1.包装2.日期3.是否透光4.颜色5.电阻颜色6.颗粒丝印&#xff08;重点&#xff09;7.其他标签或字迹结语前言 本文截止2023.2.2&#xff0c;针对笔记本内存条 省流&#xff1a;直接JD自营 最近随手在tb买了条三星…

快速掌握任意 Android 应用的抓包

抓包是流量分析的基础&#xff0c;也是安全研究重要的一环。抓包软件有很多种&#xff0c;如 Burpsuite、mitmproxy 以及 Fiddle&#xff0c;抓包方式常见的有设置系统代理、AP 热点抓包、透明代理等。不同方式有不同优缺点&#xff0c;也有不同的应用场景。相信很多安全研究者…

Google Analytics | 学习笔记

一.简介 1.什么是GA&#xff1f; 是谷歌开发的一款分析网页流量的工具&#xff0c;可以帮助网站解决数据分析与统计的问题&#xff0c;并且将这些数据可视化展现报告出来&#xff0c;帮助网站商家更好的分析受众&#xff0c;流量等&#xff0c;从而更好地进行运营网站营销等 …

UV统计的学习

12.1 、UV统计-HyperLogLog 首先我们搞懂两个概念&#xff1a; UV&#xff1a;全称Unique Visitor&#xff0c;也叫独立访客量&#xff0c;是指通过互联网访问、浏览这个网页的自然人。1天内同一个用户多次访问该网站&#xff0c;只记录1次。 PV&#xff1a;全称Page View&am…

大龄考生上岸浙大MPA的“曲线救国”策略

先来介绍一下我个人的背景把&#xff0c;我是通过参加浙大提前批面试获得A资格&#xff0c;笔试接近两百分上岸MPA项目的。说起来我的个人优势真的不多&#xff0c;只是一个普通一本&#xff0c;不是什么211/985的名校&#xff0c;所以就对浙大有一种向往&#xff0c;使得自己的…

【数据结构】1.4 算法和算法分析

文章目录1. 算法的定义及特性算法的特性算法设计的要求2. 算法的时间复杂度分析算法时间复杂度的基本方法算法时间复杂度分析例题算法时间复杂度的计算3. 算法的空间复杂度1. 算法的定义及特性 算法的定义 对特定问题求解方法和步骤的一种描述&#xff0c;它是指令的有限序列…