vulhub是一个基于docker和docker-compose的漏洞环境集合,里面大部分都是做好的虚拟机镜像文件,编译运行只需要几条简单命令。
运行环境:kali linux
一、 安装docker
ubuntu 下一键安装docker:
curl -s https://get.docker.com/ | sh
kali linux下安装docker:
- 查看kali linux版本
lsb_release -a
- 删除原系统的docker
apt-get purge docker.io
- 添加docker-ce的apt源
apt-get update
apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.daocloud.io/docker/linux/ubuntu/gpg | sudo apt-key add -
- 修改/etc/lsb-release文件
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"
- 执行下面的命令
sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.daocloud.io/docker/linux/ubuntu $(lsb_release -cs) stable"
- 更改apt数据库
apt-get update
apt-cache policy docker-ce*
apt-get install docker-ce
- 配置docker镜像加速
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://d1c9c786.m.daocloud.io
systemctl restart docker
启动docker:
sudo service docker start
二、 安装docker-compose
docker-compose是用于定义和运行多容器的Docker 应用程序工具。
安装docker-compose:
pip install docker-compose
若没有pip,可先进行安装:
下载get-pip.py
https://bootstrap.pypa.io/get-pip.py
运行:
python get-pip.py
三、 下载vulhub环境
命令下载:
git clone https://github.com/vulhub/vulhub.git
下载地址:
https://github.com/vulhub/vulhub/archive/master.zip
查看漏洞目录:
四、 运行vulhub中某一个环境
假设我们要运行nginx里的CVE-2013-4547,首先需要进到该目录下:
cd /nginx/CVE-2013-4547/
接下来编译运行:
docker-compose build(编译靶场环境)
docker-compose up -d(启动容器)
docker-compose up -d 运行时,会查看当前目录下的配置环境,若环境存在直接运行,若不存在则会自动编译,所以这条命令可以包含build命令。
列出所有运行的容器:
docker-compose ps
可以看到该服务已经运行,端口映射在8080端口,下图为运行的服务。
测试完毕后停止服务
docker-compose stop
移除容器
在测试结束后,请及时关闭并移除环境,虽然靶场全部运行在Docker中,但大多数恶意软件并不会因为运行在容器中就失去效果!
执行如下命令移除容器:
docker-compose down
上述命令具体功能如下:
- 关闭正在运行的容器
- 删除所有相关容器
- 移除NAT(docker-compose在运行的时候会创建一个NAT网段)