docker+vulhub快速搭建漏洞环境-付案例测试
字数 1162 2025-08-18 11:38:41
Docker + Vulhub 快速搭建漏洞环境教学文档
一、Docker 简介
Docker 是一个开源的应用容器引擎,允许开发者打包应用及其依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 机器上,也可以实现虚拟化。
Docker 优点:
- 硬件成本低,虚拟化硬件损耗较低,性能好
- 运行环境快速部署,启动极快,伸缩有弹性
- 支持打包管理,保证一致性
- 动态调度迁移成本低
二、Docker 安装(CentOS 7)
前期准备
- 确保 CentOS 7 系统内核版本高于 3.10
- 配置好 yum 源
安装步骤
-
更新 yum 包到最新:
yum update -
卸载旧版本(如果安装过):
yum remove docker docker-common docker-selinux docker-engine -
安装必要软件包:
yum install -y yum-utils device-mapper-persistent-data lvm2 -
设置 yum 源:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo -
查看可用 Docker 版本:
yum list docker-ce --showduplicates | sort -r -
下载并安装 container-selinux:
wget http://mirrors.atosworldline.com/public/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm rpm -ivh container-selinux-2.68-1.el7.noarch.rpm --nodeps --force -
安装 Docker:
yum install docker-ce -
启动 Docker 并设置开机启动:
systemctl start docker systemctl enable docker -
验证安装:
docker version
三、网络通信配置
Windows 10 与 CentOS 7 通信
- 确保虚拟机网络连接方式为 NAT
- 配置 VMnet8 适配器:
- 设置 IPv4 地址与 CentOS 7 在同一网段
Windows 10 与 Docker 容器通信
-
确保 CentOS 7 和 Docker 容器能互相 ping 通
-
关闭 CentOS 7 防火墙:
systemctl stop firewalld.service -
在 Windows 10 添加路由(管理员模式):
route add -p 172.17.0.0 mask 255.255.0.0 192.168.2.131(其中 192.168.2.131 是 CentOS 7 的 IP 地址)
-
查看路由:
route print
四、Docker 容器中下载 WebLogic 12c(可选)
-
获取镜像:
docker pull ismaleiva90/weblogic12 -
生成并启动容器:
docker run -d -p 7001:7001 -p 7002:7002 --restart=always ismaleiva90/weblogic12:latest -
访问 WebLogic:
http://172.17.0.1:7001/console默认账号:weblogic/welcome1
五、Vulhub 漏洞环境搭建
Docker Compose 安装
-
安装 Docker Compose:
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose -
卸载(如需):
sudo rm /usr/local/bin/docker-compose
下载 Vulhub 漏洞环境
-
克隆 Vulhub 仓库:
git clone https://github.com/vulhub/vulhub.git或直接下载:
https://github.com/vulhub/vulhub/archive/master.zip -
进入特定漏洞目录(如 WebLogic CVE-2017-10271):
cd vulhub-master/weblogic/CVE-2017-10271 -
启动漏洞环境:
docker-compose up -d -
查看运行服务端口:
docker ps -
访问漏洞环境:
http://[IP]:[PORT] -
测试完毕后关闭环境:
docker-compose down
六、验证 WebLogic XML 反序列化漏洞(CVE-2017-10271)
- 使用专业工具检测是否存在 WebLogic XML 反序列化漏洞
- 利用反序列化漏洞执行系统命令
- 使用 Wireshark 抓取渗透过程的数据包
渗透测试要点:
- 执行命令时的网络流量特征
- 响应体中的关键信息
- 系统命令执行结果(如 whoami)的返回数据
七、注意事项
- 所有操作应在授权环境下进行
- 测试完毕后及时关闭漏洞环境
- 保持系统和软件更新到最新版本
- 记录测试过程中的关键步骤和结果
通过以上步骤,您可以快速搭建一个用于渗透测试的漏洞环境,并进行相关漏洞的验证和测试。