Vulhub 漏洞靶场搭建
简介
Vulhub 是一个开源的漏洞靶场,旨在让漏洞复现更加简便。用户无需深入了解 Docker,执行简单的两条命令即可编译并运行一个完整的漏洞靶场镜像。Vulhub 使安全研究者能专注于漏洞本身,而不必花费过多时间在环境搭建上。
官网:https://vulhub.org/
(提供2024漏洞环境😊)
环境安装
1. 更换 CentOS 的 YUM 源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
下载并复制阿里云镜像源配置:
wget http://mirrors.aliyun.com/repo/Centos-7.repo
将配置内容写入 /etc/yum.repos.d/CentOS-Base.repo
文件中。
2. 安装 Docker
- 在线安装 Docker:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
- 离线安装 Docker:
首先下载 Docker 离线包:Docker 离线包下载
解压并安装:
tar zxvf docker-27.3.0.tgz
cp -p docker/* /usr/bin
将 Docker 注册为系统服务:
vim /lib/systemd/system/docker.service
如果出现文件不存在的错误,可以手动创建:
mkdir -p /lib/systemd/system
touch /lib/systemd/system/docker.service
或者将 docker.service
文件复制到该目录。以下是 docker.service
文件内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
赋予 Docker 服务文件执行权限,并重新加载 systemd 配置:
sudo chmod +x /lib/systemd/system/docker.service
sudo systemctl daemon-reload
启用并启动 Docker 服务:
sudo systemctl enable docker.service
sudo systemctl start docker
检查 Docker 服务状态:
sudo systemctl status docker
3. 安装 Docker Compose
离线安装:下载最新版本的 Docker Compose Docker Compose 下载 ,然后上传到虚拟机。
将其移动到 /usr/local/bin
目录,并改名为 docker-compose
:
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
添加执行权限:
sudo chmod +x /usr/local/bin/docker-compose
验证安装是否成功:
docker-compose version
4. 安装 Vulhub
https://github.com/vulhub/vulhub/archive/refs/heads/master.zip
下载 Vulhub 压缩包并上传到虚拟机中的任意目录(这里假设放在 /root/
目录),然后解压并进入目录:
unzip vulhub-master.zip && cd vulhub-master
5. 配置 Docker 镜像源
创建配置目录:
mkdir /etc/docker
编辑 daemon.json
文件:
vi /etc/docker/daemon.json
写入以下内容:
{
"registry-mirrors": [
"https://hub.geekery.cn",
"https://hub.littlediary.cn",
"https://docker.rainbond.cc",
"https://docker.unsee.tech",
"https://docker.m.daocloud.io"
]
}
保存后重新加载并重启 Docker:
systemctl daemon-reload
systemctl restart docker
靶场使用
1. 选择漏洞环境
进入对应的漏洞环境目录。例如:
cd /vulhub-master/tomcat/CVE-2017-12615
可选:编辑 docker-compose.yml
文件,修改端口、账号和密码等配置:
vi docker-compose.yml
2. 启动环境
执行以下命令启动环境:
docker-compose up -d
``
要关闭环境,可以执行:
docker-compose down
3. 编译和重建环境
如果环境配置文件有更新,或者需要重新编译环境,可以使用以下命令:
docker-compose build
4. 查看运行的容器端口
查看容器的运行状态:
docker ps
通过容器 ID 查看其 IP 地址,并在浏览器中访问:
http://[IP]:[Port]
``
5. 关闭虚拟机防火墙
为了避免防火墙影响,关闭防火墙服务:
systemctl stop firewalld.service
6. 关闭和清理环境
复现完漏洞后,使用以下命令关闭环境:
docker-compose down
检查是否成功关闭:
docker ps
进入容器:
docker exec -it 容器ID /bin/bash
退出容器:
exit
如果要删除所有镜像、容器、磁盘卷等,可以使用以下命令:
docker-compose down --rmi all -v
结束语
感谢大家阅读这篇文章!希望通过本教程,大家能够顺利搭建 Vulhub 漏洞靶场,并在实践中更好地学习和探索网络安全。如果你对网络安全、漏洞复现以及其他安全话题感兴趣,欢迎关注我的公众号,我们将一起探讨更多实用的安全知识与技术。
如果你觉得这篇文章对你有帮助,记得点赞并分享哦!你的支持是我持续更新和分享更多优质内容的动力。
网络安全工程师(白帽子)企业级学习路线
第一阶段:安全基础(入门)
第二阶段:Web渗透(初级网安工程师)
第三阶段:进阶部分(中级网络安全工程师)
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
学习资源分享
