Kubernetes 流量攻击图生成工具,针对性提供保护策略和预防措施

大家好,又见面了,我是 GitHub 精选君!

项目背景

在日常的 Kubernetes 集群管理和维护中,我们通常会遇到一大堆甚至可能无法预见的安全问题。一个不小心,就可能导致 Kubernetes 集群受到攻击,严重影响到公司的数据安全和业务稳定性。所以,我们急需一个工具,可以帮助我们更好的防范 Kubernetes 集群的安全问题,提前预计并主动防范。

今天要给大家推荐一个 GitHub 开源项目 DataDog/KubeHound,该项目在 GitHub 有差不多 1000 Star,用一句话介绍该项目就是:“Kubernetes Attack Graph”。

项目介绍

KubeHound 是一个 Kubernetes 流量攻击图自动生成工具,该工具可以计算集群内资源之间的攻击路径,并自动进行攻击。该项目的主要功能包括 Kubernetes 集群的全面扫描,提供针对性的保护策略和预防措施,以及生成直观的攻击图。项目的核心设计要点主要是对 Kubernetes 资源进行流程管理,对不同类型的攻击进行归类和分析,以便根据不同的攻击类型制定最有利于 Kubernetes 集群安全的策略。项目还提供了简洁直观的图形化界面,让使用者可以更直观地理解攻击路径和攻击结果。

Example Path

KubeHound 的架构图参考如下:

如何使用

你可以通过 GitHub Release下载预构建的释放二进制文件,这些文件可以直接在 Linux/Windows/Mac OS 上使用。下载并解压缩 Release 文件后,通过以下命令启动后端:

./kubehound.sh backend-up

接着选择你的目标 Kubernetes 集群,可以通过 kubectx 选择目标集群,或者通过设置环境变量 export KUBECONFIG=/your/path/to/.kube/config 使用特定的 kubeconfig 文件。

最后通过运行以下命令执行已经打包好的配置(config.yaml)来运行已经编译好的二进制文件:

./kubehound.sh run

同时,你也可以通过 git 克隆仓库,然后从源码编译定制自己的 KubeHound:

# 克隆仓库
git clone https://github.com/DataDog/KubeHound.git
# 进入项目目录
cd KubeHound
# 编译项目
make kubehound

然后按照之前介绍的方式设置目标 Kubernetes 集群,并运行编译的二进制文件。

项目推介

KubeHound 是由 DataDog 维护的项目,DataDog 是一家全球领先的云计算,监控和安全解决方案提供商,他们为全球范围内的许多大公司提供了技术解决方案,因此他们的开源项目都非常值得信赖。

以下是该项目 Star 趋势图(代表项目的活跃程度):

更多项目详情请查看如下链接。

开源项目地址:https://github.com/DataDog/KubeHound

开源项目作者:DataDog

以下是参与项目建设的所有成员:

关注我们,一起探索有意思的开源项目。


更多精彩请扫码关注如下公众号。

Written on December 14, 2023