Vulhub靶场搭建

简介: 安装Docker在安装、使用Docker的过程中出现错误比较多,所以这一节来说明一下如何正确安装最新版本的Docker,(国内机器)并且配置加速器。一键安装Docker这是推荐方式。在未安装过Docker的机器上,root权限执行如下命令即可一键安装最新版Docker:curl -s https://get.docker.com/ | sh如果你已经安装过老版本Docker(且不是用这个一键安装脚本安装的),请先卸载Docker(例如sudo apt purge --autoremove docker.io)。如果你不想使用这种方式安装Docker,也可以使用系统自带的包管理工具来

安装Docker

在安装、使用Docker的过程中出现错误比较多,所以这一节来说明一下如何正确安装最新版本的Docker,(国内机器)并且配置加速器。

一键安装Docker

这是推荐方式。在未安装过Docker的机器上,root权限执行如下命令即可一键安装最新版Docker:

curl -s https://get.docker.com/ | sh

如果你已经安装过老版本Docker(且不是用这个一键安装脚本安装的),请先卸载Docker(例如sudo apt purge --autoremove docker.io)。

如果你不想使用这种方式安装Docker,也可以使用系统自带的包管理工具来安装,比如在Ubuntu下:

sudo apt install docker.io

但包管理工具安装的Docker版本一般较老,有可能在使用Vulhub的时候会出现BUG(基本上下不会,但也不排除有的Docker版本过老的)。

注意,docker是一个系统服务,所以,安装完成后可能需要手工启动服务:service start docker,否则会出现连接失败的情况。同样,如果docker没有自启动,你也需要手工启动docker服务。如果你是使用一键安装工具安装的docker,则docker会自动启动。

安装docker-compose

Docker-compose用于组合服务与内网。有部分环境涉及到多个容器,且不同环境开启的端口、目录也不相同,所以Vulhub选择使用docker-compose做环境一键化管理工具。用户不再需要学习docker命令的各种参数与用法,只需要简单地执行docker-compose up -d即可启动容器。

Docker-compose基于Python开发,所以我们可以使用pip进行安装。

安装PIP

当然,如果你的环境中没有安装pip,还需要先安装pip。推荐使用如下命令进行安装,这种方式将会少安装很多不需要的依赖:

yum -y install epel-release
yum install python-pip

安装docker-compose

有pip后即可直接使用pip安装docker-compose:

pip3 install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成后,执行docker-compose -v,有返回则说明安装成功。

下载Vulhub

安装完成docker和docker-compose后,拉取Vulhub到本地任意目录即可:

git clone https://github.com/vulhub/vulhub.git

如果拉取速度太慢,可以直接下载master分支的压缩包:Vulhub.zip

启动漏洞环境

docker-compose会自动查找当前目录下的配置文件(默认文件名为docker-compose.yml),并根据其内容编译镜像和启动容器。所以,要运行某个漏洞靶场,需要先进入该漏洞所在的目录。

在Vulhub中选择某个环境,进入对应目录。如Flask服务端模板注入漏洞,我们进入flask/ssti目录:

cd flask/ssti

直接执行如下命令,进行漏洞靶场的编译和运行:

# 可选
docker-compose build
docker-compose up -d

为什么docker-compose build是可选的?

docker-compose up -d运行后,会自动查找当前目录下的配置文件。如果配置文件中包含的环境均已经存在,则不会再次编译;如果配置文件中包含的环境不存在,则会自动进行编译。所以,其实docker-compose up -d命令是包含了docker-compose build的。

如果更新了配置文件,你可以手工执行docker-compose build来重新编译靶场环境。


目录
相关文章
|
7月前
|
开发工具 git
[github配置] 远程访问仓库以及问题解决
[github配置] 远程访问仓库以及问题解决
150 0
|
开发工具 git
突破网络限制,让你更畅快的从GitHub Clone 代码
Github不仅是全球最大的同性交友平台,还是一个巨大的代码库,包含个各种优秀的项目,对于爱学习的你,就忍不住想把源码下载下来,进行仔细研读一番。当敲下git clone的时候就开始漫长的等待。不管你是100M还是200M的光纤,速度永远是几十KB,这和百度云有点像。当然没有什么是充钱不能解决的,百度云可以这个当然也行。充钱开个代理,就能解决问题。如果你不想充钱那就请往下看吧。
突破网络限制,让你更畅快的从GitHub Clone 代码
|
JSON 数据格式
手把手教你将 Github 私有仓库部署到 Vercel
手把手教你将 Github 私有仓库部署到 Vercel
1585 0
|
JavaScript Shell 网络安全
在Windows环境下使用hexo搭建博客以及部署到gitee / github
在Windows环境下使用hexo搭建博客以及部署到gitee / github
209 0
【PythonWeb】两种方法、搭建自己的pypi服务器。内网的你,必须要会
【PythonWeb】两种方法、搭建自己的pypi服务器。内网的你,必须要会
|
SQL 安全 Ubuntu
【GitHub】从0开始搭建GitHub环境系列之二——创建仓库
【GitHub】从0开始搭建GitHub环境系列之二——创建仓库
186 0
【GitHub】从0开始搭建GitHub环境系列之二——创建仓库
|
网络安全 开发工具 git
【GitHub】从0开始搭建GitHub环境系列之三——clone仓库
【GitHub】从0开始搭建GitHub环境系列之三——clone仓库
240 0
【GitHub】从0开始搭建GitHub环境系列之三——clone仓库
|
弹性计算 安全 Linux
Ecs搭建vulhub靶场环境
搭建vulhub靶场,进行漏洞复现
Ecs搭建vulhub靶场环境