kali linux安装DVWA靶场

#自己自学网络安全,查了很多,大多数都建议新手部署在kali上,对初学者比较友好#

介绍:

DVWA(Damn Vulnerable Web Application,直译“该死的脆弱Web应用”)是一个专门设计用于网络安全学习和渗透测试的PHP/MySQL Web应用程序。它包含多种常见的Web漏洞,供安全研究人员、开发者和学生练习漏洞挖掘、渗透测试和防御技术。


1. DVWA 的主要特点

✅ 故意设计漏洞:包含SQL注入、XSS、CSRF、文件上传漏洞等常见安全风险。
✅ 多种安全等级:可调整难度(Low/Medium/High/Impossible),适合不同水平的学习者。
✅ 开源免费:基于PHP/MySQL,可本地部署(如Kali Linux、Docker等)。
✅ 适合教学:广泛用于CTF比赛、网络安全课程及渗透测试培训。


2. DVWA 包含的漏洞类型

漏洞类型说明
SQL注入(SQLi)攻击者通过恶意SQL语句操纵数据库(如获取管理员密码)。
XSS(跨站脚本)注入恶意JavaScript代码,盗取Cookie或劫持用户会话。
CSRF(跨站请求伪造)诱骗用户在已登录状态下执行非预期操作(如修改密码)。
文件上传漏洞上传恶意文件(如PHP Webshell)控制服务器。
命令注入(Command Injection)通过系统命令执行漏洞获取服务器权限(如; ls /etc)。
暴力破解(Brute Force)测试弱密码(如admin/123456)破解登录。
文件包含(LFI/RFI)读取服务器敏感文件(如/etc/passwd)或远程执行代码。
不安全的验证机制如弱密码、未加密传输等。

一.安装Apache,Mysql,PHP

命令:sudo apt update
           sudo apt install -y apache2 mariadb-server php php-mysqli php-gd libapache2-mod-php

如果谈这个是因为PHP他有两个版本需要你选择,所以调整一下命令就可以了

apt install -y apache2 mariadb-server php php8.4-mysql php-gd libapache2-mod-php

二.开启Apache和Mysql

命令:

sudo systemctl start apache2    # 启动Apache
sudo systemctl start mariadb   # 启动MySQL(MariaDB替代传统MySQL)
sudo systemctl enable apache2 mariadb  # 设置开机自启

三.下载DVWA

命令:

cd /var/www/html
sudo git clone https://github.com/digininja/DVWA.git
sudo mv DVWA dvwa  # 可选:重命名为dvwa(方便访问)
sudo chown -R www-data:www-data /var/www/html/dvwa  # 设置权限

1. cd /var/www/html

这个命令的作用是将当前工作目录切换到/var/www/html。在许多基于 Linux 的 Web 服务器环境中,/var/www/html通常是默认的 Web 根目录,所有可供访问的 Web 文件都会存放在这里。

2. sudo git clone https://github.com/digininja/DVWA.git

  • sudo:以超级用户权限执行命令,因为克隆仓库到系统目录可能需要管理员权限。
  • git clone:这是 Git 版本控制系统的一个命令,用于从远程仓库复制项目到本地。
  • https://github.com/digininja/DVWA.git:这是 DVWA 项目在 GitHub 上的仓库地址。执行该命令后,会将 DVWA 项目的代码下载到/var/www/html目录下。

3. sudo mv DVWA dvwa (可选)

  • sudo:同样是以超级用户权限执行命令。
  • mv:是 Linux 系统中的移动或重命名命令。这里将克隆下来的DVWA目录重命名为dvwa,这样做的好处是在后续访问时可能会更方便,例如在浏览器中输入 URL 时更容易记忆。

4. sudo chown -R www-data:www-data /var/www/html/dvwa

  • sudo:以超级用户权限执行命令。
  • chown:用于更改文件或目录的所有者和所属组。
  • -R:递归选项,表示对指定目录及其所有子目录和文件都应用相同的更改。
  • www-data:www-datawww-data通常是 Web 服务器(如 Apache)运行时使用的用户和组。将/var/www/html/dvwa目录及其内容的所有者和所属组都设置为www-data,可以确保 Web 服务器有足够的权限来访问和操作这些文件。

四.配置MySQL数据库

先启动Apache和数据库mariadb

# 查看启动状态
service apache2 status 

# 启动apache2
service apache2 start
# 查看现在状态
service apache2 status 

# 查看启动状态
service mariadb status 

# 启动mariadb
service mariadb start 

在浏览器输入 http://ip (自己的ip地址)

显示如上就可以了

在终端输入:mysql

创建配置数据库:

# 创建数据库dvwa
create database dvwa;

# 创建数据库用户dvwa,密码是p@ssw0rd
create user dvwa@localhost identified by 'p@ssw0rd';

# 分配权限,可以远程登录
grant all on dvwa.* to dvwa@localhost;

# 刷新权限
flush privileges;

五.配置DVWA

# 到/var/www/html/DVWA目录下
cd /var/www/html/DVWA

# 重命名配置文件
cp config/config.inc.php.dist config/config.inc.php

六.初始化数据库

登录网址:http://ip/DVWA/setup.php  点击右下角Create/Reset Database进行初始化,点击后会跳转到登陆页面

用户名:admin
密码:password

进入这个界面就表示配置部署完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值