Kubestriker:一款针对Kubernetes的快速安全审计工具

枫少@KillBoy
枫少@KillBoy
管理员
219
文章
0
粉丝
资源分享395,310字数 1187阅读3分57秒阅读模式
AI智能摘要
你的Kubernetes集群是否正因一个微小配置疏忽而命悬一线?别让生产环境中的安全漏洞酿成灾难!Kubestriker作为专为K8s设计的极速安全审计工具,无需平台限制即可深度扫描自托管及云服务集群,精准揪出IAM权限滥用、网络策略缺陷、容器配置陷阱等12类高危隐患。它支持认证与未认证双模式扫描,自动生成详细报告并提示权限提升路径,助工程师在风险爆发前彻底堵住安全缺口。三分钟部署,一次扫描,让隐匿的配置危机无处遁形——守护云原生安全,从此刻开始。
— AI 生成的文章内容摘要

Kubestriker:一款针对Kubernetes的快速安全审计工具-图片1

基本概述

Kubestriker是一款针对Kubernetes的快速安全审计工具,Kubestriker可以对Kubernetes的infra容器执行大量深入检测,以帮助研究人员识别其中存在的安全错误配置以及其他安全问题。这些安全问题可能是工程师或开发人员在使用Kubernetes会遇到的,尤其是在大规模生成环境之中,一个小小的安全问题可能会带来严重的安全风险。

Kubestriker不依赖于特定平台运行,它可以在多个平台上工作,比如说自托管的KubernetesAmazon EKSAzure AKSGoogle GKE等。

Kubestriker:一款针对Kubernetes的快速安全审计工具-图片2

支持的功能

扫描自管理和云提供商管理的Kubernetes infra;

各种服务或开放端口的网络侦察阶段扫描;

如果启用了不安全的读写或只读服务,则执行自动扫描;

执行验证扫描和未验证扫描;

扫描群集中的各种IAM错误配置;

扫描各种包含错误配置的容器;

扫描各种包含错误配置的Pod安全策略;

扫描各种错误配置的网络策略;

扫描群集中某个主题的权限;

在容器上运行命令并返回输出;

提供包含错误配置的服务的终端节点;

提供可能的权限提升详细信息;

详细的扫描报告;

工具安装

克隆代码库并安装

在安装该工具或克隆并运行该应用程序之前,我们需要在本地安装好GitPython 3pip。我们建议广大研究人员在虚拟环境中安装和使用该工具。

接下来,我们可以在命令行工具中运行下列命令。

创建Python虚拟环境:

$ python3 -m venv env

激活Python虚拟环境:

$ source env/bin/activate

克隆项目代码库:

$ git clone https://github.com/vchinnipilli/kubestriker.git

切换至项目目录:

$ cd kubestriker

安装依赖组件:

$ pip install -r requirements.txt

避免弹出错误提醒:

$ pip install prompt-toolkit==1.0.15  $ pip install -r requirements.txt

部署Kubestriker:

$ python -m kubestriker

此时,我们将能够看到当前工作目录中已经生成了工具实例。

使用pip安装

为了安装并运行Kubestriker,我们需要在本地系统上安装好pip工具。接下来,我们可以在命令行工具中运行下列命令。

创建Python虚拟环境:

$ python3 -m venv env

激活Python虚拟环境:

$ source env/bin/activate

使用pip安装Kubestriker:

$ pip install kubestriker

避免弹出错误提醒:

$ pip install prompt-toolkit==1.0.15  $ pip install kubestriker

部署Kubestriker:

$ python -m kubestriker

此时,我们将能够看到当前工作目录中已经生成了工具实例。

如何配置Kubestriker容器

点击【这里】获取Kubestriker容器的最新发布版本。

配置Kubestriker容器:

$ docker run -it --rm -v /Users/vasantchinnipilli/.kube/config:/root/.kube/config -v "$(pwd)":/kubestriker --name kubestriker cloudsecguy/kubestriker:v1.0.0

将商上述命令中的用户vasantchinnipilli 替换成你自己的用户名,并修改Kube配置文件的绝对路径:

$ docker run -it --rm -v /Users/<yourusername>/.kube/config:/root/.kube/config -v "$(pwd)":/kubestriker --name kubestriker cloudsecguy/kubestriker:v1.0.0

部署Kubestriker:

$ python -m kubestriker

此时,我们将能够看到当前工作目录中已经生成了工具实例。

Kubestriker:一款针对Kubernetes的快速安全审计工具-图片3

支持的扫描类型

认证扫描

认证扫描要求用户至少具有只读权限,并在扫描期间提供令牌。请使用下面提供的链接创建只读用户:

Amazon EKS只读权限用户创建:【传送门

Azure AKS只读权限用户创建:【传送门

Google GKE只读权限用户创建:【传送门

使用基于访问控制的角色创建一个主题:【传送门

从EKS集群获取一个令牌:

$ aws eks get-token --cluster-name cluster-name --region ap-southeast-2

从AKS集群获取一个令牌:

$ az aks get-credentials --resource-group myResourceGroup --name myAKSCluster

从GKE集群获取一个令牌:

$ gcloud container clusters get-credentials CLUSTER_NAME --zone=COMPUTE_ZONE

从服务账号获取一个令牌:

$ kubectl -n namespace get secret serviceaccount-token -o jsonpath='{.data.token}'

从一个Pod直接获取令牌或通过命令行执行漏洞获取令牌:

$ cat /run/secrets/kubernetes.io/serviceaccount/token

未认证扫描

如果允许对目标群集进行匿名访问,则可以对目标执行未认证扫描。

识别Kubernetes主节点上开放的不安全端口:

Kubestriker:一款针对Kubernetes的快速安全审计工具-图片4

使用kubelet读写和只读开放端口来识别Worker节点:

Kubestriker:一款针对Kubernetes的快速安全审计工具-图片5

许可证协议

本项目的开发与发布遵循Apache开源许可证协议。

项目地址

Kubestriker:【GitHub传送门

参考资料

https://docs.aws.amazon.com/eks/latest/userguide/add-user-role.html

https://docs.microsoft.com/en-us/azure/aks/control-kubeconfig-access

https://cloud.google.com/kubernetes-engine/docs/how-to/iam

https://medium.com/@rschoening/read-only-access-to-kubernetes-cluster-fcf84670b698

https://hub.docker.com/repository/docker/cloudsecguy/kubestriker

https://pypi.org/project/pip/

https://virtualenv.pypa.io/en/latest/installation.html

https://git-scm.com/

https://www.python.org/downloads/

https://www.freebuf.com/sectool/266481.html

 
枫少@KillBoy
评论  39  访客  39
    • 幽光使
      幽光使 1

      这个工具看起来挺实用的,正好最近在搞K8s安全测试

        • 森林里的小声
          森林里的小声 0

          @ 幽光使 比手动kubectl get all查配置快多了,省时间

        • 嗒嗒钟
          嗒嗒钟 1

          有人用过吗?扫描效果怎么样?

          • 棋魂
            棋魂 0

            之前手动检查配置太麻烦了,这个能省不少事

            • 比特狂想
              比特狂想 1

              安装步骤写得很详细,新手跟着做应该没问题

              • 彗星追光者
                彗星追光者 0

                为啥要装两个版本的prompt-toolkit?

                • 撒娇小橘猫
                  撒娇小橘猫 0

                  支持云厂商这点不错,我们用的就是EKS

                  • GoldenFlame
                    GoldenFlame 0

                    扫描报告能导出成什么格式啊?

                    • 风旅
                      风旅 1

                      容器部署那块用户名替换要注意,上次就踩坑了

                      • 镜中幻蝶
                        镜中幻蝶 0

                        权限提升检测这个功能很关键

                        • 梦入江南
                          梦入江南 0

                          感觉比kube-bench好用,界面更友好

                            • 针织时光
                              针织时光 1

                              @ 梦入江南 界面友好有啥用,关键得扫得准啊

                            • CopperLeaf
                              CopperLeaf 0

                              pip安装时卡在prompt-toolkit了,非得降级?

                                • 毛毛球
                                  毛毛球 0

                                  @ CopperLeaf 依赖问题确实烦,我直接用了conda

                                  • 樵夫林
                                    樵夫林 0

                                    @ CopperLeaf 我也卡那了,降级到1.0.15就没事了,不知道为啥非得这个版本。

                                  • 老歌谣
                                    老歌谣 0

                                    正好在测GKE集群,拿它试试看能揪出啥问题

                                    • 疏林晚照
                                      疏林晚照 0

                                      这工具能检测RBAC配置错误不?

                                        • IvoryGhost
                                          IvoryGhost 0

                                          @ 疏林晚照 RBAC检测这块用起来还行,能揪出一些没注意到的过度授权。

                                        • 亡命
                                          亡命 1

                                          之前用kube-hunter漏了好几个问题,希望这个靠谱点

                                          • 奶昔星星
                                            奶昔星星 0

                                            扫描完直接给修复建议就好了,光列问题有点懵

                                            • 星界流浪者
                                              星界流浪者 0

                                              新手问下:没开匿名访问是不是就不能未认证扫描了?

                                                • 暖阳融融
                                                  暖阳融融 0

                                                  @ 星界流浪者 未认证扫描对生产环境有风险吧?

                                                • 墨韵公主
                                                  墨韵公主 0

                                                  导出报告支持PDF吗?还是只有JSON?

                                                  • 瓷匠曹二十九
                                                    瓷匠曹二十九 1

                                                    部署容器时挂载kubeconfig路径写错了直接报错,折腾半小时 😅

                                                    • 磨坊何
                                                      磨坊何 1

                                                      这个工具能扫描Pod安全策略吗?

                                                      • 雷鸣壮士
                                                        雷鸣壮士 0

                                                        EKS集群试了下,发现几个配置问题,挺准的

                                                        • 幽谷寒鸦
                                                          幽谷寒鸦 0

                                                          为啥要重复安装prompt-toolkit啊?

                                                          • 宗正
                                                            宗正 0

                                                            之前手动检查网络策略累死了,这个省事

                                                            • 软软糖心
                                                              软软糖心 0

                                                              扫描报告能直接发邮件吗?

                                                              • 布布熊
                                                                布布熊 0

                                                                权限提升检测确实重要,上次就遇到类似问题

                                                                • 旺财
                                                                  旺财 0

                                                                  安装过程挺顺利的,就是虚拟环境那步要注意

                                                                  • 花猫侠
                                                                    花猫侠 0

                                                                    有人试过在AKS上用吗?效果如何?

                                                                    • 翼影
                                                                      翼影 1

                                                                      感觉界面比kube-hunter清爽

                                                                      • 静夏
                                                                        静夏 1

                                                                        版本兼容性怎么样?支持k8s 1.25吗?

                                                                        • 流年烬
                                                                          流年烬 0

                                                                          RBAC扫描结果详细吗?

                                                                          • 璀璨星河
                                                                            璀璨星河 0

                                                                            扫描报告好像只能导出JSON,要PDF得自己转一下,有点不方便。

                                                                            • 机灵鬼
                                                                              机灵鬼 0

                                                                              看起来功能挺全的,正好下周做安全审计,拿来试试水。

                                                                              • 竹蜻蜓飞行家
                                                                                竹蜻蜓飞行家 1

                                                                                云厂商都支持,挺省事的

                                                                                • SassySassy
                                                                                  SassySassy 1

                                                                                  权限提升那块儿讲得挺细的

                                                                                匿名

                                                                                发表评论

                                                                                匿名网友

                                                                                拖动滑块以完成验证