写点什么

二、面向云原生环境的安全体系

  • 2022 年 5 月 15 日
  • 本文字数:1277 字

    阅读完需:约 4 分钟

二、面向云原生环境的安全体系

根据云原生环境的构成,面向云原生环境的安全体系可包含三个层面的安全机制。

1. 容器安全

容器技术是云原生体系的底层,因而容器安全也是云原生安全的基石。容器层面的安全可以分为以下几部分。

  • 容器环境基础设施的安全性,比如主机上的安全配置是否会影响到其上运行的容器,主机上的安全漏洞和恶意进程是否会影响到容器,容器内的进程是否可以利用主机上的安全漏洞,等等。

  • 容器的镜像安全,包括镜像中的软件是否存在安全漏洞,镜像在构建过程中是否存在安全风险,镜像在传输过程中是否被恶意篡改,等等。

  • 容器的运行时安全,比如运行的容器间的隔离是否充分,容器间的通信是否是安全的,容器内的恶意程序是否会影响到主机或者其他容器,容器的资源使用情况是否安全,等等。

  • 整个容器生态的安全性,比如 Docker 自身的安全性如何,ServiceMesh/Serverless 对容器安全有什么影响,容器中安全密钥的管理与传统环境有什么不同,容器化后的数据隐私保护与传统的数据隐私保护是否一致,等等。


对于容器云的安全方案,可以分别从两个方面进行设计。对于南北向的网络安全,可以通过安全资源池引流的方式,实现相应的安全检测与防护,这也是业界多数云安全解决方案的实现方式。对于容器云内部的安全,可以通过相应的容器安全机制实现。最后将这两部分统一接入云安全集中管理系统,进行统一的安全管理和运营。

2.编排系统安全

Kubernetes 已经成为事实上的云原生编排系统,那么 Kubernetes 的安全就成为非常重要的编排安全部分。

  • Kubernetes 组件接口存在的风险:绝大多数组件以基于 HTTP 或 HTTPS 的 API 形式提供服务,其中一些非加密的接口容易为利用。

  • 集群网络存在的风险:为了实现集群 Pod 间相互通信,在安装部署 Kubernetes 后,我们往往还要额外安装一个网络插件,常见的网络插件有 Flannel、Calico 和 Cilium 等。在没有其他网络隔离策略和 Pod 安全策略的默认情况下,由于 Pod 与 Pod 之间彼此可连通,且 Pod 内的 root 用户具有 CAP_NET_RAW 权限,集群内部可能发生网络探测、嗅探、拒绝服务和中间人攻击等网络攻击。

  • 访问控制机制存在的风险:Kubernetes 中的访问控制机制主要由认证机制、授权机制和准入机制三个部分组成,每一个部分通常会有一种或多种具体的实现机制可供选择。即使认证和授权机制在容器环境创建初期遵循了最小权限等安全原则,随着时间的推移和环境的更新变动,角色与权限可能会变得混乱,从而为攻击者提供可乘之机。

  • 无法根治的软件漏洞:作为一个复杂系统,Kubernetes 自然被曝出过许多安全漏洞。比如 CVE-2019-11253:YAML 炸弹,CVE-2019-9512/9514:HTTP/2 协议实现存在问题等等。

3.云原生应用安全

编排系统支撑着诸多微服务框架和云原生应用,如无服务、服务网格等,这些新型的微服务体系也同样存在各种安全风险。例如,攻击者通过编写一段无服务器的代码获得运行无服务程序容器的 shell 权限,进而对容器网络进行渗透。云原生应用的安全,包括面向云原生应用的零信任体系、云原生应用的传统安全机制、业务安全和 API 安全。此外,无服务器计算也是新的云原生计算模式,其安全机制更偏业务层面,其中包括未授权的风险、数据泄露风险、FaaS 平台账户的风险、被滥用的风险等等。


发布于: 刚刚阅读数: 4
用户头像

InfoQ签约作者 2018.11.30 加入

热爱生活,收藏美好,专注技术,持续成长

评论

发布
暂无评论
二、面向云原生环境的安全体系_云原生安全_穿过生命散发芬芳_InfoQ写作社区