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来重新编译靶场环境。


目录
相关文章
|
Java 程序员 Apache
编程语言比拼之Java VS C++
Java和C++都是非常受欢迎的编程语言,各有各的优势和适用场景。以下是对它们的简要比较:
827 0
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
279304 0
|
12月前
|
人工智能 监控 安全
借助API,淘宝京东拼多多卖家轻松应对市场变化
在电商竞争中,淘宝、京东、拼多多卖家常面临库存、定价、订单等难题。借助API技术,可实现库存同步、动态调价、智能订单处理、数据预测与客服整合,提升效率300%。API正成为电商智能化运营的核心引擎,助力商家精准决策、高效增长。(238字)
|
10月前
|
移动开发 小程序 Java
一套自主版权的项目级云MES系统源码,支持App、小程序、H5及后台管理,基于Vue3 + Spring Boot多模块架构
一套自主版权的项目级云MES系统源码,支持App、小程序、H5及后台管理,基于Vue3 + Spring Boot多模块架构,兼容主流数据库,具备高扩展性。支持多终端登录、SSO单点认证、动态权限控制与SaaS多租户,提供代码生成器,助力高效二开。已落地多个制造项目,适用于汽车、电子、食品等行业,实现生产全流程数字化管理。
615 6
|
机器学习/深度学习 人工智能 自然语言处理
PaddleSpeech:百度飞桨开源语音处理神器,识别合成翻译全搞定
PaddleSpeech是百度飞桨团队推出的开源语音处理工具包,集成语音识别、合成、翻译等核心技术,基于PaddlePaddle框架提供高性能解决方案。
1696 18
PaddleSpeech:百度飞桨开源语音处理神器,识别合成翻译全搞定
|
机器学习/深度学习 人工智能 自然语言处理
Documind:开源 AI 文档处理工具,将 PDF 转换为图像提取结构化数据
Documind 是一款利用 AI 技术从 PDF 中提取结构化数据的先进文档处理工具,支持灵活的本地或云端部署。
1000 8
Documind:开源 AI 文档处理工具,将 PDF 转换为图像提取结构化数据
|
SQL 数据库 Python
sqlmap的安装及使用教程_sqlmap安装使用教程
sqlmap的安装及使用教程_sqlmap安装使用教程
|
Ubuntu 关系型数据库 MySQL
Ubuntu上使用docker安装mysql
Ubuntu上使用docker安装mysql1.docker仓库搜索mysql docker search mysql /images/img/20220308164142.png 2.docker仓库拉取mysql8.0镜像 docker pull mysql:8.0 docker pull mysql #拉取最新版本的mysql 3.查看本地镜像是否安装成功 docker images mysql:8.0 /images/img/20220308164232.png 4.安装运行mysql8.0容器 docker run -p 3307:3306 --name mysql -e MYSQL
|
网络协议 NoSQL 网络安全
CTFHUB SSRF 【全】
CTFHUB SSRF 【全】
1118 0