vulhub | kali Linux搭建vulhub靶场(超详细)


前言


提示:在搭建vulhub之前,可以看看我的搭建心得,或许对你有帮助哦!

前段时间,我重装了电脑系统,导致很多环境配置丢失。最近终于有时间,决定重新搭建vulhub环境。然而,这一过程并不顺利。首先,Kali系统更新失败;其次,Docker与Docker Compose版本不兼容;最后,由于网络限制,国内无法直接拉取所需的Docker镜像,多个国内镜像源也相继失效。好在,经过一番努力,这些问题都解决了,也总结了一些经验。下面我就和大家分享一下具体的搭建过程,希望能帮到有需要的朋友!

提示:以下是本篇文章正文内容,下面案例可供参考

一、Vulhub是什么?

Vulhub 是一个基于 Docker 的漏洞环境集合,里面包含了各种常见的漏洞场景,特别适合用来复现漏洞和学习安全技术。

二、Kali Linux 环境配置

1.Kali Linux 版本选择

我使用的kali版本:Kali Linux 2023.1
Kali Linux 官方下载地址为:https://www.kali.org/releases/
你可以根据自己的需求选择适合的版本(如 ISO 镜像、虚拟机镜像等)。

2.检查系统内核版本

首先,确保你的系统内核版本高于 3.10,因为 Docker 需要较高版本的内核支持。

uname -r # 显示当前系统的内核版本
uname -a # 显示系统的详细信息,包括内核名称、版本、主机名、硬件架构等

在这里插入图片描述
如果内核版本低于 3.10,你需要升级内核或选择一个支持 Docker 的操作系统。

3.更换软件源并更新系统

编辑 /etc/apt/sources.list 文件,将当前的源替换为适合你需求的源。更换源可以加快下载速度并提高软件包的稳定性,但请务必选择可靠的源,并遵守相关法律法规。目前,我使用的是系统默认的源。

使用以下命令更新软件包列表并升级已安装的软件包:

sudo apt-get update  # 更新软件包索引,从配置的软件源中获取最新的软件包列表
sudo apt-get upgrade  # 升级系统中已安装的软件包到最新版本

出现以下错误,可能需要更新密钥环::在这里插入图片描述

wget -q -O - https://archive.kali.org/archive-key.asc | sudo apt-key add

在这里插入图片描述
更新密钥环以后,更新软件包索引
在这里插入图片描述
升级系统中已安装的软件包到最新版本(可以不升级,对后续操作不影响)
在这里插入图片描述
至此,Kali Linux 环境配置已完成。

三、Docker环境配置

1.安装Docker

使用以下命令安装 Docker:

apt-get install docker.io

在这里插入图片描述
在这里插入图片描述
安装完成后,查看 Docker 版本信息:

docker --version  # 显示 Docker 客户端的版本信息
docker version  # 显示 Docker 客户端和服务端的详细信息,包括版本号、API 版本、Go 版本等

在这里插入图片描述

2.启动并启用 Docker 服务

如果你只是临时使用 Docker,仅在需要时手动启动服务:

sudo systemctl start docker  # 启动 Docker 服务

如果你需要 Docker 服务长期运行,建议设置开机自启:

sudo systemctl enable docker  # 设置 Docker 服务开机自启
sudo /lib/systemd/systemd-sysv-install enable docker  # 使用 sysv-init 兼容工具启用 Docker 服务

检查 Docker 状态:

sudo systemctl status docker.service  # 查看 Docker 服务的运行状态

在这里插入图片描述
确保服务状态显示为 active (running)(绿色)。

3.测试 Docker

运行 hello-world 镜像,测试 Docker 是否正常工作:

sudo docker run hello-world

在这里插入图片描述
如果一切正常,你将看到 Hello from Docker! 的输出。

4.配置 Docker 镜像加速(可选)

如果出现以下错误,可能是网络问题,建议配置 Docker 镜像加速来提升下载速度:

Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers).
See 'docker run --help'.

在这里插入图片描述

配置步骤:

创建并编辑 /etc/docker/daemon.json 文件:

sudo mkdir -p /etc/docker  # 创建 Docker 配置目录
sudo vi /etc/docker/daemon.json  # 编辑配置文件

添加镜像加速地址:
在文件中添加以下内容(以多个国内镜像源为例)

{
  "registry-mirrors": [
        "https://docker.sunzishaokao.com",
        "https://docker.1ms.run",
        "https://docker.1panel.live",
        "https://docker.anyhub.us.kg"
  ]
}

重新加载配置并重启 Docker 服务:

sudo systemctl daemon-reload  # 重新加载系统服务配置
sudo systemctl restart docker  # 重启 Docker 服务
sudo systemctl status docker  # 检查 Docker 服务状态

检查配置是否生效,运行以下命令,查看 Docker 配置信息:

docker info

在这里插入图片描述
在输出中查找 Registry Mirrors,确认配置的镜像加速地址已成功应用。

注意事项:

如果配置后 Docker 仍无法正常工作,可能是镜像源不可用。目前许多国内镜像源存在不稳定的情况,建议尝试其他镜像源或直接使用官方源。
这里推荐一篇师傅写的文章,内容非常实用,可以参考一下:https://www.kelen.cc/dry/docker-hub-mirror

四、安装Docker Compose

自 Docker 20.10.0 版本起,Docker Compose 作为子命令集成到 Docker CLI 中,成为 Docker Compose V2。与之前的 Compose V1(Python 版 docker-compose)相比,V2 提供了更强大的功能,包括改进的 CLI 体验和优化的 BuildKit 构建性能。从 2023 年 7 月 起,Compose V1 已停止更新,并在 Docker Desktop 新版本中不可用。因此,Vulhub 不再需要单独安装 docker-compose,文档也已更新为使用 docker compose 子命令。

我的Docker 版本是 26.1.5,远高于 20.10.0,因此应该自带 docker compose 功能。
运行以下命令,检查是否支持 docker compose:

docker compose version

如果输出类似以下内容,说明 docker compose 已安装:
在这里插入图片描述
如果提示命令未找到,则进行如下步骤:
在这里插入图片描述
查找 docker compose 的文件位置
Docker Compose V2 通常作为 CLI 插件安装,默认路径可能位于以下目录之一:

/usr/libexec/docker/cli-plugins
/usr/local/lib/docker/cli-plugins
~/.docker/cli-plugins

如果未找到 docker compose 文件,可以手动下载并安装 Docker Compose 二进制文件。
访问 Docker Compose 的 GitHub 发布页面::https://github.com/docker/compose/releases
根据你的系统架构,下载对应的二进制文件:

uname -s  # 查看操作系统类型(例如:Linux)
uname -m  # 查看系统架构(例如:x86_64)
  • 对于 64 位 Linux 系统,下载文件名为:docker-compose-linux-x86_64。
  • 对于 ARM 64位系统,下载文件名为:docker-compose-linux-aarch64。
    在这里插入图片描述

将下载的文件移动到 /usr/libexec/docker/cli-plugins/ 目录:

mv docker-compose-linux-x86_64 /usr/libexec/docker/cli-plugins/docker-compose
chmod +x /usr/libexec/docker/cli-plugins/docker-compose  #赋予可执行权限
docker compose version  #查看docker compose版本信息

在这里插入图片描述至此,Docker Compose 环境配置已完成。

五、Vulhub搭建

1.下载 Vulhub

Vulhub 是一个基于 Docker 的漏洞环境集合,可以通过以下命令下载:

# 下载项目
wget https://github.com/vulhub/vulhub/archive/master.zip -O vulhub-master.zip
# 解压
unzip vulhub-master.zip
# 进入解压后的目录
cd vulhub-master

在这里插入图片描述

2. 启动漏洞环境

进入某个漏洞/环境的目录,例如 Flask SSTI:

cd flask/ssti

在这里插入图片描述
启动环境:

docker compose pull  # 拉取所需镜像
docker compose up -d  # 启动环境
docker images #列出本地所有镜像

在这里插入图片描述
等待容器启动,如果你已经启动了容器,可以通过以下命令查看端口映射:

docker ps

在这里插入图片描述
你可以通过浏览器访问http://localhost:8000 来测试漏洞环境。
在这里插入图片描述
在这里插入图片描述

再次提醒:如果docker compose pull 拉取所需镜像失败,可能是镜像源不可用。目前许多国内镜像源存在不稳定的情况,建议尝试其他镜像源或直接使用官方源。

3.停止和清理

当你完成漏洞测试后,可以使用以下命令停止并删除容器:

sudo docker-compose down

只会清理容器、网络和挂载卷,不会删除镜像。

至此,vulhub搭建已完成。

六、其他搭建方案

若上述方法仍无法解决Docker镜像拉取问题,为您提供两种备选部署方案。搭建流程相似,只是采用的靶场环境不同,本文章是Vulhub搭建,推荐文章是Vulfocus搭建。具体部署步骤可参考《手把手教你两种Vulfocus靶场部署方案——本地Docker加速妙招+阿里云一键部署指南》

Vulhub漏洞靶场是一个面向大众的开源漏洞靶场,旨在让漏洞复现变得更加简单,让安全研究者更加专注于漏洞原理本身。搭建Vulhub漏洞靶场可以按照以下步骤进行操作: 1. 下载Vulhub压缩包,并上传到虚拟机的任意目录。可以使用离线安装或者Git安装两种方法中的任意一种。离线安装可以通过下载Vulhub压缩包并解压来完成,Git安装可以使用以下命令进行安装: ``` $ git clone https://github.com/vulhub/vulhub.git ``` 如果没有安装Git,需要先安装Git: ``` $ yum install -y git ``` 2. 安装DockerDocker-Compose。可以使用以下命令进行安装: ``` $ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun $ curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose $ chmod +x /usr/local/bin/docker-compose ``` 3. 运行Vulhub漏洞靶场镜像。在Vulhub目录下执行以下命令: ``` $ cd vulhub/ $ docker-compose up -d ``` 这样就完成了Vulhub漏洞靶场搭建。你可以通过访问相应的地址和端口来进行漏洞复现和实操。请注意,搭建漏洞靶场需要一定的安全意识和技术知识,建议在合适的环境中进行操作。 #### 引用[.reference_title] - *1* [开源漏洞靶场 Vulhub环境搭建](https://blog.youkuaiyun.com/tianlang2013/article/details/123621374)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Vulhub漏洞靶场搭建](https://blog.youkuaiyun.com/m0_61869253/article/details/129649232)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值