跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash

在 Kali Linux 中安装与配置 Vulhub 漏洞靶场

在 Kali Linux 环境下搭建 Vulhub 漏洞靶场的完整流程。内容包括环境准备、Docker 及 Docker Compose 的安装、Vulhub 源码的克隆与启动方法,以及常见问题的排查指南。通过该教程,安全研究人员可以快速复现各类漏洞环境,专注于漏洞原理分析。

路由之心发布于 2025/2/6更新于 2026/6/1427 浏览
在 Kali Linux 中安装与配置 Vulhub 漏洞靶场

前言

在学习网络安全的过程中,搭建漏洞靶场有着至关重要的作用。通过复现各种经典漏洞,可以更直观地理解漏洞产生的原因、攻击原理以及防御措施,从而有效提升安全研究能力。Vulhub 是一个开源的漏洞环境集合,非常适合用于学习和测试。

本文将详细介绍如何在 Kali Linux 系统中安装和配置 Vulhub 漏洞靶场,包括环境依赖的安装、源码克隆、容器启动及日常维护操作。

什么是 Vulhub?

Vulhub 是一个基于 Docker 和 Docker Compose 的漏洞环境集合。它的设计初衷是让漏洞复现变得更加简单,让安全研究者能够专注于漏洞原理本身,而无需花费大量时间配置复杂的运行环境。

用户只需进入对应的漏洞目录,执行一条命令即可启动一个全新的漏洞环境。关闭或移除环境时,同样只需在对应目录下执行清理命令。Vulhub 官方地址为 https://www.vulhub.org,提供了丰富的漏洞模块供学习使用。

环境准备

由于 Vulhub 依赖于 Docker 容器技术,因此第一步需要确保系统已安装 Docker 及相关工具。

1. 更新软件源

切换至 root 用户(或使用 sudo),首先更新软件包列表,以确保后续安装的软件版本较新。

apt-get update

2. 安装 HTTPS 传输支持

为了从 HTTPS 仓库下载 Docker 相关组件,需要先安装必要的传输协议支持和 CA 证书。

apt-get install -y apt-transport-https ca-certificates

3. 安装 Docker

Kali Linux 通常可以通过官方源直接安装 Docker。

apt install docker.io

安装完成后,验证版本并启动服务:

docker -v
systemctl start docker

查看当前运行的容器状态,确认 Docker 守护进程正常:

docker ps -a

4. 安装 Python 包管理工具 Pip

Docker Compose 通常通过 Python 进行安装和管理,因此需要安装 pip。

apt-get install python3-pip

5. 安装 Docker Compose

使用 pip 安装 docker-compose 插件,这是编排多容器应用的关键工具。

pip3 install docker-compose

安装完成后,检查版本号以确认安装成功:

docker-compose -v

下载与配置 Vulhub

1. 克隆源码仓库

使用 Git 将 Vulhub 的官方仓库克隆到本地。由于仓库包含大量镜像和配置文件,下载速度可能较慢,请保持耐心。

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

克隆成功后,进入 vulhub 目录并查看目录结构:

 vulhub

cd
ls

2. 选择漏洞模块

Vulhub 的目录结构按漏洞类型分类。例如,Flask 框架的 SSTI 漏洞位于 flask/ssti 目录下。进入目标漏洞目录:

cd flask/ssti

3. 启动漏洞环境

在该目录下执行构建和启动命令。docker-compose build 可选,用于重新构建镜像;docker-compose up -d 用于后台启动容器。

docker-compose build
docker-compose up -d

启动后,查看容器状态,确认端口映射情况(例如 8000 端口):

docker-compose ps

打开浏览器访问对应 IP 和端口,验证漏洞环境是否成功启动。

4. 停止与清理环境

当测试结束后,务必清理资源以避免占用系统端口和内存。请在原目录下执行以下命令:

docker-compose down

该命令会停止并删除容器、网络等资源。注意不要离开当前目录,否则无法正确识别配置文件。

常见问题排查

1. 权限问题

如果执行 Docker 命令提示权限不足,可以将当前用户加入 docker 组,或者使用 sudo 提权。

usermod -aG docker $USER

修改组后需注销并重新登录生效。

2. 端口冲突

部分漏洞模块默认绑定特定端口(如 80, 443, 8000)。如果端口被占用,启动可能会失败。可通过修改 docker-compose.yml 文件中的端口映射来调整。

3. 网络连通性

确保宿主机可以访问容器内部的服务。对于本地测试,通常直接访问 localhost 即可;若涉及远程测试,需配置防火墙规则允许相应端口。

总结

本文详细演示了在 Kali Linux 中安装 Docker、Docker Compose 以及部署 Vulhub 漏洞靶场的完整流程。通过掌握这些基础操作,安全研究人员可以快速搭建各类漏洞环境,进行深入的漏洞分析与复现。建议在实际操作中多参考 Vulhub 官方文档,了解不同漏洞模块的具体配置要求和使用场景。

目录

  1. 前言
  2. 什么是 Vulhub?
  3. 环境准备
  4. 1. 更新软件源
  5. 2. 安装 HTTPS 传输支持
  6. 3. 安装 Docker
  7. 4. 安装 Python 包管理工具 Pip
  8. 5. 安装 Docker Compose
  9. 下载与配置 Vulhub
  10. 1. 克隆源码仓库
  11. 2. 选择漏洞模块
  12. 3. 启动漏洞环境
  13. 4. 停止与清理环境
  14. 常见问题排查
  15. 1. 权限问题
  16. 2. 端口冲突
  17. 3. 网络连通性
  18. 总结
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Python 爬虫实战:抓取图书馆图书信息与借阅评分
  • C++ std::string 初始化与常用方法详解
  • 从零开发 AR 演讲提词器:基于 Rokid CXR-M SDK 的实战指南
  • 双指针算法实战:移动零与复写零详解
  • OpenAI 指控 DeepSeek 非法蒸馏,字节发布 Seedance 2.0,Java 26 预览版来了
  • 微信指挥 AI 员工:QClaw 本地部署与实战指南
  • 微信指挥 AI 员工:QClaw 本地部署与使用指南
  • Python 就业数据分析:方向、岗位与城市选择指南
  • 机器人系统架构详解:2026 年最新技术路线
  • Python 30 行实现公开接口数据本地化存储
  • Linux 基础 IO 详解:从 C 标准库到系统调用的底层逻辑
  • 洛谷 P10262 亲朋数:基于余数状态转移的 DP 解法
  • 程序员转行网络安全的原因及学习路径
  • Git 高效统计:作者提交次数与代码行数分析
  • SALMONN:支持语音音频与音乐的开源大语言模型
  • Java Lambda 与匿名内部类为何不能修改外部变量?解析 Final 与等效 Final
  • Spring Boot 集成 Neo4j 图数据库实战指南
  • Spring Boot 数据访问与数据库集成实战
  • 大模型商业化:ToB 与 ToC 并非选择题
  • Rust 异步微服务架构最佳实践与反模式

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online