超过38万个开放的 Kubernetes API 服务

原文:Over 380 000 open Kubernetes API servers | The Shadowserver Foundation
编辑:Zhibo Zhang

编者按:出于个人热爱和学习,以及对本报告的浓厚兴趣,自发翻译了英文原文内容。如有涉及侵权,请联系论坛管理员进行删除。Kubernetes API的地域分布和公有云厂商在全球的布局有一定相关性,北美是云原生领域最为发达的地区,我国对Kubernetes的采用程度出于世界前列。绝大多数用户都会跟随Kubernetes版本的生命周期,目前1.21版本用户数量最多。从全球态势来看,Arm平台上的Kubernetes远远未达到足够多的数量级。

介绍

我们最近开始扫描可访问的 Kubernetes API 实例,这些实例以 200 OK HTTP 响应对我们的探测器进行响应。Kubernetes 是时下非常流行的开源软件,用于自动部署、扩展和管理容器化应用程序。

我们能够识别的超过 45 万个Kubernetes API,每天发现超过 38 万个允许某种形式的访问的 Kubernetes API。这些数据每天都会在我们的 Accessible Kubernetes API Server Report 中共享。

虽然这并不意味着这些实例完全开放或容易受到攻击,但这种访问级别很可能不是有意的,并且这些实例是不必要的暴露攻击面。它们还允许版本相关信息泄漏。

我们如何扫描

我们每天使用 /version URI 使用 HTTP GET 请求进行扫描。 我们扫描端口 6443443 上的所有 IPv4 地址。我们收集响应 HTTP 200 OK(附带 JSON 响应)的 Kubernetes 服务器,因此在其响应中披露版本信息。我们不会执行任何侵入性检查来确定可以获得的访问级别。

扫描结果

2022 年 5 月 16 日的扫描结果发现总共有454,729 个 Kubernetes API ,其中的 381,645 个 IP 以 200 OK HTTP 响应响应我们的探测。因此,开放 API 的实例占我们可以在 IPv4 互联网上扫描的所有实例的近 84%

大多数可访问的 Kubernetes API 服务器位于美国 ,总数为 201,348 (近 53% )。下图是可通过唯一 IP 访问的 Kubernetes API 服务器 (2022-05-16)

下图是按照国家细分的可访问的 Kubernetes API 服务器 (2022-05-16):

可访问的 Kubernetes 主要/次要版本细分:

1.2 4
1.5 90
1.6 6
1.7 4
1.8 53
1.9 41
1.10 95
1.11 199
1.12 497
1.13 383
1.14 1542
1.15 1310
1.16 3678
1.17 34918
1.18 33877
1.19 50902
1.20 65487
1.21 148645
1.22 33221
1.23 9518
1.24 585
1.25 4

按照系统架构区分:

linux/amd64 384240
linux/arm64 683
linux/ppc64le 134
linux/s390x 8
linux/arm 4

缓解

如果您收到可访问实例的通知,请考虑在防火墙级别实施访问授权或阻止以减少暴露的攻击面。

您可以在此官方指南中阅读有关保护对 Kubernetes API 的访问的更多信息。

如果您的 Kubernetes API 端点在您不期望的 IP 上可用,并且您在 IPVS 模式下使用 kube-proxy,请参阅https://github.com/kubernetes/kubernetes/pull/108460

有关我们扫描工作的更多信息,请查看我们的Internet 扫描摘要页面。

1 个赞