Kubernetes 安全要点:网络配置错误——看不见的攻击面
这件事讲了什么
Dynatrace 发文指出,Kubernetes 集群默认允许任意 Pod 互相访问。若没有定义 NetworkPolicy 并由网络插件真正执行,一个只负责网页的 Pod 也能直连数据库,哪怕它根本不需要。文章用有漏洞的示例应用和开源工具 Kimera 演示:攻击者从被攻陷的前端 Pod 出发,能通过 DNS 发现全部 16 个服务,并连上数据库、缓存和 Kubernetes API。随后用 NetworkPolicy 阻断这些路径,验证策略是否真的生效。对读者的用处是:如果你在运行 Kubernetes,应先检查命名空间里有没有网络策略,而不是只加固单个容器,因为去掉全部权限的 Pod 照样能访问别的服务。
可以使用的工具
文中可用工具
- KimeraDynatrace 维护的开源 Kubernetes 安全测试工具,在授权演示环境中检查和验证网络策略等安全控制
- NetworkPolicyKubernetes 中用于限制 Pod 之间访问的对象,需由网络层实际执行
- Unguard application故意留有漏洞的微服务示例应用,用于演示攻击与修复
- CoreDNS为服务提供可预测名称的域名解析,演示中被用于发现服务
- Dynatrace Kubernetes Security Posture Management (KSPM)持续检查 Kubernetes 配置是否符合安全与合规要求,标出缺失的网络策略
- Smartscape展示应用中介攻击路径中涉及的服务调用
- MariaDB演示环境中的数据库实例,原本不该被前端访问却可达
- Redis演示环境中的缓存实例,演示中发现可从被攻陷的 Pod 连接
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。