当前位置: 首页 > news >正文

【零基础实战】Ubuntu搭建DVWA漏洞靶场全流程详解(附渗透测试示例)

【零基础实战】Ubuntu搭建DVWA漏洞靶场全流程详解(附渗透测试示例)

在这里插入图片描述

一、DVWA靶场简介

DVWA(Damn Vulnerable Web Application)是专为网络安全学习者设计的漏洞演练平台,包含SQL注入、XSS、文件包含等10大Web漏洞模块,采用PHP+MySQL架构,非常适合用于:

  • Web安全漏洞原理学习
  • 渗透测试技能实战演练
  • 安全工具(BurpSuite、sqlmap等)实战测试

二、环境准备(Ubuntu 20.04/22.04)

1. 更新系统源

sudo apt update && sudo apt upgrade -y

2. 安装LAMP环境

sudo apt install -y apache2 mysql-server php libapache2-mod-php php-mysql

3. 安装必要扩展

sudo apt install -y php-gd php-curl php-zip php-mbstring php-xml

三、DVWA部署流程(详细步骤)

1. 下载DVWA源码

cd /var/www/html
sudo wget https://githubfast.com/digininja/DVWA/archive/master.zip
sudo unzip master.zip
sudo mv DVWA-master dvwa
sudo rm master.zip

2. 配置数据库

#启动mysql
sudo systemctl start mysql
#查看状态
sudo systemctl status mysql
#开机服务启动
sudo systemctl enable mysql


sudo mysql -u root -p
> CREATE DATABASE dvwa;
> CREATE USER 'dvwa_user'@'localhost' IDENTIFIED BY 'P@ssw0rd';
> GRANT ALL PRIVILEGES ON dvwa.* TO 'dvwa_user'@'localhost';
> FLUSH PRIVILEGES;
> exit



#docker单独安装mysql数据库(可选)
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.0.39
#启动(可选)
docker run --name mysql_test -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.0.39
#进入(可选)
docker exec -it mysql_test mysql -uroot -p

3. 修改配置文件

cd dvwa/config
sudo cp config.inc.php.dist config.inc.php
sudo nano config.inc.php

修改以下参数:

$_DVWA['db_user'] = 'dvwa_user';
$_DVWA['db_password'] = 'p@ssw0rd';

$_DVWA[ 'recaptcha_public_key' ]  = getenv('RECAPTCHA_PUBLIC_KEY') ?: '6LdJJlUUAAAAAH1Q6cTpZRQ2Ah8VpyzhnffD0mBb';
$_DVWA[ 'recaptcha_private_key' ] = getenv('RECAPTCHA_PRIVATE_KEY') ?: '6LdJJlUUAAAAAM2a3HrgzLczqdYp4g05EqDs-W4Kwq';

数据库修改:

在这里插入图片描述

配置key:

在这里插入图片描述

4. 设置文件权限

sudo chmod -R 755 /var/www/html/dvwa
sudo chown -R www-data:www-data /var/www/html/dvwa

5. 重启服务

#启用mod_rewrite
sudo a2enmod rewrite

#修改vim /etc/php/8.3/apache2/php.ini
display_startup_errors = On
#如果没有则添加
display_errors = On

#允许远程文件访问
allow_url_fopen = On
allow_url_include = On

sudo systemctl restart apache2 

#检查状态
systemctl status apache2


#查看报错日志
tail -f /var/log/apache2/error.log


四、访问与初始化

  1. 浏览器访问 http://localhost/dvwa
  2. 点击"Create / Reset Database"初始化数据库:
  3. 使用默认账号登录:
    • 用户名:admin
    • 密码:password

登录界面:

在这里插入图片描述

五、常见问题排查

1. PHP函数未启用错误

解决方法:

sudo nano /etc/php/8.1/apache2/php.ini

修改以下配置:

allow_url_include = On
magic_quotes_gpc = Off

2. 数据库连接失败

检查:

  • MySQL服务状态 systemctl status mysql
  • 用户权限是否配置正确
  • 防火墙是否放行3306端口

3. 文件权限问题

重置权限命令:

sudo chmod -R 777 /var/www/html/dvwa/hackable/uploads

六、渗透测试实战示例(SQL注入)

1. 设置安全等级

将DVWA Security设为"Low"

2. SQL注入测试

访问SQL Injection页面,输入:
1' union select 1,group_concat(user,0x3a,password) from users#

3. 使用sqlmap自动化测试

sqlmap -u "http://localhost/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit" --cookie="PHPSESSID=xxx; security=low" --dbs

七、安全建议

  1. 仅在本地环境搭建
  2. 定期更新系统补丁
  3. 使用完成后关闭服务
sudo systemctl stop apache2 mysql

下一篇预告: 《DVWA靶场XSS漏洞实战:从注入到Cookie劫持》

(注:实际操作请遵守网络安全法,仅在授权环境进行测试)

安全建议

  1. 仅在本地环境搭建
  2. 定期更新系统补丁
  3. 使用完成后关闭服务
sudo systemctl stop apache2 mysql

如果本教程帮助您解决了问题,请点赞❤️收藏⭐支持!欢迎在评论区留言交流技术细节!

http://www.dtcms.com/a/122697.html

相关文章:

  • Java常用工具算法-5--哈希算法、加密算法、签名算法关系梳理
  • 蓝桥杯 B3620 x 进制转 10 进制
  • 【蓝桥杯】15届JAVA研究生组F回文字符串
  • STM32单片机入门学习——第29节: [9-5] 串口收发HEX数据包串口收发文本数据包
  • C++设计模式+异常处理
  • 21 天 Python 计划:MySQL 数据库初识
  • LangChain使用大语言模型构建强大的应用程序
  • 开源模型应用落地-模型上下文协议(MCP)-从数据孤岛到万物互联(一)
  • Linux 实时查看 CUDA 显卡的使用情况命令
  • 基于形状补全和形态测量描述符的腓骨游离皮瓣下颌骨重建自动规划|文献速递-深度学习医疗AI最新文献
  • 【Linux】Linux 操作系统 - 03 ,初步指令结尾 + shell 理解
  • Qt中的信号与槽及其自定义
  • mysql Creating sort index
  • 博物馆小程序怎么做?从0到1打造数字化文化窗口
  • openEuler欧拉系统配置local的yum源
  • 蓝桥杯-蓝桥幼儿园(Java-并查集)
  • 【KWDB 创作者计划】_KWDB:开源引领数据库创新变革
  • 多图超详细:Docker安装知识库AI客服RAGFlow的详细步骤、使用教程及注意事项:
  • Vue接口平台学习五——测试环境页面
  • 关于量化交易在拉盘砸盘方面应用的部分思考
  • HTML 是什么?网页创建的核心标记语言
  • 如何开发英语在线训练小程序:从0到1的详细步骤
  • spring-cloud-starter-alibaba-seata使用说明
  • C++ RAII 的用途及业务代码实现案例
  • 20周年系列|美创科技再度入围「年度高成长企业」系列榜单
  • 鸿蒙NEXT开发Preferences工具类(ArkTs)
  • Python生成器与列表的对照使用详解
  • 2025高教社杯全国大学生数学建模竞赛——5个月备赛规划
  • Spring Boot 启动后自动执行 Service 方法终极指南
  • 正则表达式补充——python