Kube-hunter:一个用于Kubernetes渗透测试的开源工具

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: Aqua 是一家专注于Docker、Kubernetes、Mesos安全的公司,最近他们开源了一款测试工具叫做kube-hunter。kube-hunter翻译成中文是Kubenetes猎人,而这个猎人寻找的“猎物”就是Kubernetes集群中的安全漏洞。
Aqua 是一家专注于Docker、Kubernetes、Mesos安全的公司,最近他们开源了一款测试工具叫做kube-hunter。kube-hunter翻译成中文是Kubenetes猎人,而这个猎人寻找的“猎物”就是Kubernetes集群中的安全漏洞。

我们最近发布了一款叫做 Kube-hunter 的免费工具。你只需提供你的Kubernetes集群的IP或者DNS名称,Kube-hunter就会探查集群中的安全漏洞——这个过程就像是自动化的渗透测试。

注意:这个工具目的是为了帮助测试你自己部署的集群,以便你找到潜在的安全问题。请不要用这个工具探测不属于你的集群!
如果你的集群的 Kubernetes监控面板被暴露到公网 或者你的 kubelets可以被外界访问 ,Kube-hunter会向你发出警告。

运行Kube-hunter


Kube-hunter是 开源 的,我们同时也提供容器化的版本,使它可以很容易的运行起来。容器化的版本需要和我们的 kube-hunter网站 一起使用,在这个网站上你可以很容易的查看结果,并将结果共享给你的团队。

kube-hunter网站 ,输入你的email, 你将会得到一个包含token的Docker命令,复制该命令并运行它(确保你安装了Docker),系统将会弹出框提示你输入你想测试的Kubernetes的集群的地址。当所有测试运行完后,你将会看到一个用于查看结果的唯一URL(与之前的token相关联),你可以将这个URL分享给需要查看结果的其他任何人。

被动猎人以及active猎人

(此处应该翻译为主动猎人,但是下文中active更容易理解)

Kube-hunter 默认只运行“被动猎人” ,被动猎人指的是一系列测试,这些测试是用于探测集群中的潜在访问点(如开放端口)。

你也可以打开“主动打猎”模式,只需要加上 --active 参数。当使用active模式时,kube-hunter会尝试利用“被动猎人”发现的任何弱点来进行一些额外的测试。active猎人目的是为了展示攻击者可能做的事情,虽然我们并不想这些测试做任何破坏性的操作,但是你应该谨慎使用,因为active猎人可能会改变集群的状态或其中运行的代码。例如:有一个 active猎人 尝试进入一个容器并运行 uname 命令。

负责任的进行渗透测试

或许我不该强调这么多遍,但是你绝对不能把kube-hunter用于别人的集群!虽然这个工具极大可能被用于攻击其他网站,但是绝对不是我们的目的(如果您使用kube-hunter网站,在您接受的条款和条件中明确的禁止了这类事情)。

在发布kube-hunter之前,我们仔细考虑了它会被坏人利用的可能性;但事实上,他们可能已经通过一些通用工具,例如 port scanning (端口扫描)进行了类似的测试。我们希望为Kubernetes管理员,操作员和工程师提供一种简单的方法来识别他们集群中的安全漏洞,以便这些漏洞被攻击者利用之前被解决掉。

测试

你可以在kube-hunter网站上找到已经实现的测试列表,或者使用 --list 参数运行kube-hunter。这些测试尚不全面,但确实有很多猎人可以发现许多常见问题。

开源测试

基础的测试代码是开源的(你可以在不使用网站的情况下运行),我们欢迎大家的反馈,想法,希望大家能贡献其他猎人的代码!

本文转自DockOne-Kube-hunter:一个用于Kubernetes渗透测试的开源工具

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
5天前
|
Ubuntu 网络安全 容器
KubeSphere 是一个开源的容器平台,提供丰富的功能和便捷的操作界面,适用于企业容器化部署和管理
KubeSphere 是一个开源的容器平台,提供丰富的功能和便捷的操作界面,适用于企业容器化部署和管理。本文详细介绍了如何在 Ubuntu 22.04 上安装 KubeSphere,包括系统要求、安装依赖项、设置防火墙、下载安装脚本、选择安装选项、验证安装结果等步骤,并提供了常见问题的解决方法。希望本文能为读者提供实用的参考和帮助。
17 3
|
7天前
|
安全 前端开发 测试技术
如何选择合适的自动化安全测试工具
选择合适的自动化安全测试工具需考虑多个因素,包括项目需求、测试目标、系统类型和技术栈,工具的功能特性、市场评价、成本和许可,以及集成性、误报率、社区支持、易用性和安全性。综合评估这些因素,可确保所选工具满足项目需求和团队能力。
|
5天前
|
监控 网络协议 Java
一些适合性能测试脚本编写和维护的工具
一些适合性能测试脚本编写和维护的工具
|
6天前
|
安全 网络协议 关系型数据库
最好用的17个渗透测试工具
渗透测试是安全人员为防止恶意黑客利用系统漏洞而进行的操作。本文介绍了17款业内常用的渗透测试工具,涵盖网络发现、无线评估、Web应用测试、SQL注入等多个领域,包括Nmap、Aircrack-ng、Burp Suite、OWASP ZAP等,既有免费开源工具,也有付费专业软件,适用于不同需求的安全专家。
10 2
|
17天前
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
17 1
|
22天前
|
Kubernetes 安全 容器
关于K8s,不错的开源工具
【10月更文挑战第12天】
|
20天前
|
编解码 人工智能 自然语言处理
迈向多语言医疗大模型:大规模预训练语料、开源模型与全面基准测试
【10月更文挑战第23天】Oryx 是一种新型多模态架构,能够灵活处理各种分辨率的图像和视频数据,无需标准化。其核心创新包括任意分辨率编码和动态压缩器模块,适用于从微小图标到长时间视频的多种应用场景。Oryx 在长上下文检索和空间感知数据方面表现出色,并且已开源,为多模态研究提供了强大工具。然而,选择合适的分辨率和压缩率仍需谨慎,以平衡处理效率和识别精度。论文地址:https://www.nature.com/articles/s41467-024-52417-z
41 2
|
5天前
|
开发框架 安全 .NET
.NET使用Moq开源模拟库简化单元测试
.NET使用Moq开源模拟库简化单元测试~
|
1月前
|
jenkins 测试技术 持续交付
提升软件测试效率的实用技巧与工具
【10月更文挑战第12天】 本文将深入探讨如何通过优化测试流程、引入自动化工具和持续集成等策略,来显著提高软件测试的效率。我们将分享一些实用的技巧和工具,帮助测试人员更高效地发现和定位问题,确保软件质量。
45 2
|
15天前
|
NoSQL 测试技术 Go
自动化测试在 Go 开源库中的应用与实践
本文介绍了 Go 语言的自动化测试及其在 `go mongox` 库中的实践。Go 语言通过 `testing` 库和 `go test` 命令提供了简洁高效的测试框架,支持单元测试、集成测试和基准测试。`go mongox` 库通过单元测试和集成测试确保与 MongoDB 交互的正确性和稳定性,使用 Docker Compose 快速搭建测试环境。文章还探讨了表驱动测试、覆盖率检查和 Mock 工具的使用,强调了自动化测试在开源库中的重要性。