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

[渗透测试]渗透测试靶场docker搭建 — —全集

[渗透测试]渗透测试靶场docker搭建 — —全集

对于初学者来说,仅仅了解漏洞原理是不够的,还需要进行实操。对于公网上的服务我们肯定不能轻易验证某些漏洞,否则可能触犯法律。这是就需要用到靶场。

  • 本文主要给大家介绍几种常见漏洞对应的靶场(个人推荐),如果大家有更好的,欢迎在评论区打出来,大家一起交流。

环境准备:docker安装

1. Windows/Mac:

mac或Windows系统推荐安装DockerDesktop可视化应用,安装成功后自带docker。

  • 官网地址:https://docs.docker.com/desktop/setup/install/mac-install/
    在这里插入图片描述

2. Linux:apt/yum直接安装

  1. apt方式安装
# 更新软件
sudo apt-get update
# 安装docker
sudo apt-get install docker.io
# 启动docker
sudo systemctl start docker
# 将docker作为服务自启(可选)
sudo systemctl enable docker
  1. yum方式安装
yum install -y yum-utils
yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo# 安装docker
yum install docker
# 启动docker
systemctl start docker

靶场搭建

1. CSRF/SSRF漏洞:pikachu

CSRF漏洞详解:https://blog.csdn.net/weixin_45565886/article/details/147232587
SSRF漏洞详解:https://blog.csdn.net/weixin_45565886/article/details/146994934

# 安装docker
apt install docker.io# 通过docker搭建靶场
docker run -d -p 8765:80 8023/pikachu-expect:latest
# 浏览器输入下面地址,访问靶场页面
http://localhost:8765

初始化靶场,点击启动或初始化,配置数据库信息,然后就可以选择漏洞模块进行测试:
在这里插入图片描述

在这里插入图片描述

2. SQL注入:sqli-labs

SQL注入详解:https://blog.csdn.net/weixin_45565886/article/details/144769308

# 搜索镜像
docker search sqli-labs# 选择合适的镜像
docker pull acgpiano/sqli-labs# 运行容器
docker run -d --name my-sqli-labs -p 80:80 acgpiano/sqli-labs # 访问页面准备打靶
http://localhost
# 点击页面Setup/reset Database初始化靶场数据# 设置id,请求数据
http://localhost/Less-2/?id=1

在这里插入图片描述

选择关卡进行挑战:
在这里插入图片描述

3. XSS漏洞:xss-challenge-tour

XSS详解:https://blog.csdn.net/weixin_45565886/article/details/146162767

# 拉取镜像
docker pull c0ny1/xss-challenge-tour # 运行容器
docker run -dt --name xss -p 8080:80 --rm c0ny1/xss-challenge-tour 

输入http://localhost:8080/访问靶场:
在这里插入图片描述

4. 目录遍历漏洞:webgoat

目录遍历详解:https://blog.csdn.net/weixin_45565886/article/details/145579398

# 拉取镜像
docker pull webgoat/webgoat-8.0docker pull webgoat/webwolf
docker pull webgoat/goatandwolf# 启动容器
docker run -p 8888:8888 -p 8080:8080 -p 9090:9090 webgoat/goatandwolf

浏览器访问:http://127.0.0.1:8080/WebGoat,进入靶场页面:
在这里插入图片描述

5. 文件上传漏洞:upload-labs

文件上传漏洞详解:https://blog.csdn.net/weixin_45565886/article/details/145793742

# docker拉取镜像
docker pull cuer/upload-labs# 运行镜像
docker run -d -p 8081:80 cuer/upload-labs

浏览器输入http://localhost:8081/ 访问靶场:在这里插入图片描述

6. 全能靶场:DVWA

除了dvwa,上面的pikachu、webgoat也属于全能靶场,可以验证多种漏洞。

# 拉取dvwa镜像
sudo docker pull vulnerables/web-dvwa# 创建docker网络
sudo docker network create dvwa-network# 启动MySQL容器
sudo docker run --name dvwa-db --network dvwa-network -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=dvwa -d mysql:5.7
##  ------- 
如果出现报错:docker: no matching manifest for linux/arm64/v8 in the manifest list entries.
这是因为docker默认会识别我们当前CPU架构,然后拉取对应版本架构的镜像。我这里是mac m芯片,对应arm64.但
实际MySQL没有该架构的版本。因此我们分成两步走,先通过 --platform linux/x86_64 指定架构拉取镜像,然后再启动容器。
sudo docker pull --platform linux/x86_64 mysql:5.7
sudo docker run --name dvwa-db --network dvwa-network -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=dvwa -d mysql:5.7
##  -------# 启动dvwa容器
sudo docker run --name dvwa --network dvwa-network -p 80:80 -d vulnerables/web-dvwa
# 在浏览器中访问 http://localhost/setup.php,选择“创建数据库”,这将自动为你创建DVWA所需的数据库。
## 确保数据库连接信息是正确的,默认信息是:
## 数据库主机:dvwa-db
## 用户名:root
## 密码:root
## 数据库名:dvwa
http://localhost/setup.php# 访问dvwa,初始默认用户:默认用户 admin 和密码 password
http://localhost

点击下方create,创建数据库配置:
在这里插入图片描述

然后访问http://localhost,初始默认用户:默认用户 admin 和密码 password:
在这里插入图片描述

调整漏洞难度级别:
在这里插入图片描述

http://www.xdnf.cn/news/853.html

相关文章:

  • 【Linux】轻量级命令解释器minishell
  • 计算机组成原理笔记(十九)——4.4定点乘法运算
  • CentOS 7进入救援模式——VirtualBox虚拟机
  • 深入解析Vue3响应式系统:从Proxy实现到依赖收集的核心原理
  • Kubernetes 创建 Jenkins 实现 CICD 配置指南
  • 目标检测中的损失函数(二) | BIoU RIoU α-IoU
  • k8s之 kube-prometheus监控
  • 6N60-ASEMI机器人功率器件专用6N60
  • RabbitMQ
  • 进程控制(linux)
  • Tailwind 武林奇谈:bg-blue-400 失效,如何重拾蓝衣神功?
  • CSS零基础入门笔记:狂神版
  • http 文件下载和上传服务
  • Android RK356X TVSettings USB调试开关
  • LabVIEW数据采集与传感系统
  • 【项目管理】成本类计算 笔记
  • 离线安装rabbitmq全流程
  • postman乘法计算,变量赋值
  • EXCEL学习
  • JavaScript性能优化实战(1):性能优化基础与性能分析工具
  • 精益数据分析(11/126):辨别虚荣指标,挖掘数据真价值
  • NoSQL数据库
  • 泰迪智能科技大模型应用平台功能特色优势
  • KUKA机器人不同的安装方式的设置
  • leetcode0130. 被围绕的区域- medium
  • Electron Demo 的快速编译与启动
  • 【Django】设置让局域网内的人访问
  • Spring Batch
  • 重构便携钢琴专业边界丨特伦斯便携钢琴V30Pro定义新一代便携电钢琴
  • StarRocks:一款开源的高性能分析型数据仓库