Docker 搭建 Vulnhub 靶场环境
Vulnhub 是一个漏洞靶场平台,里面含有大量的靶场镜像,只需要下载虚拟机镜像,导入 VMWare 或者 VirtualBox 即可启动靶场,同时它还提供了 Docker 镜像,可以使用 Docker 直接启动靶场,大大简化了渗透测试人员在搭建各种漏洞靶场时的步骤。
今天我们来讲一下如何使用 Docker 来启动 Vulnhub 上的靶场。
首先需要准备一台虚拟机,我用的是 CentOS7 的虚拟机,1 核 4 G 内存 60G 硬盘,为了靶场运行流畅一点,就多给了一点内存,直接给了 4 G。
首先需要安装 docker,先安装一下阿里的镜像源。
yum install -y wget && wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
接下来安装 docker。
yum -y install docker-ce-18.06.1.ce-3.el7
启动 docker 服务并设置开机自启。
systemctl enable docker && systemctl start docker
查看 docker 版本,验证是否安装成功。
docker --version
接着安装 docker-compose,我直接下载可执行文件,也可以通过 pip 安装。
# 下载
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 建立软链接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
第一条命令由于网络原因可能会失败,多试几次就好,或者可以尝试 pip 安装,安装完验证是否安装成功。
docker-compose --version
然后我们还需要安装 git,用它把 vulnhub 的仓库 clone 下来,因为我们需要通过仓库里的 Dockerfile 启动靶场。
直接使用 yum 安装 git。
yum install -y git
开始 clone 仓库。
git clone https://github.com/vulhub/vulhub
<small>PS:官网是 Vulnhub,仓库叫 Vulhub,差点给我整蒙了。</small>
完成后 cd 到 vulhub 文件夹,ls 查看一下文件。
image里面是一个个靶场,其实我们可以先看一下 github 仓库,上面的 Readme 写的也很清楚。
image尝试一下 Struts2 的靶场。
$ cd struts2/
$ ls
# README.md s2-001 s2-005 s2-007 s2-008 s2-009 s2-012 s2-013 s2-015 s2-016 s2-032 s2-045 s2-046 s2-048 s2-052 s2-053 s2-057 s2-059 s2-061
$ cat README.md
# Struts2 Series Command Execution Vulnerable Environments
$ cd s2-001
$ ls
# 1.jpeg docker-compose.yml Dockerfile README.md README.zh-cn.md S2-001.war
cat 一下 README.zh-cn.md,里面写的很详细。
image按照提示启动靶场。
docker-compose build
docker-compose up -d
查看一下端口。
docker ps
可以看到 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp,直接访问虚拟机 ip + port。
image接下来就可以开始愉快地渗透之旅了!