eBPF云原生安全:原理与实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 云原生安全的演进

面对快速变化的挑战和迫切的市场需求,云原生安全的发展机遇与挑战并存。企业的投入是最能直接反映云原生安全发展的标尺,据Paloalto 2022年在全球范围的云原生安全调查报告,伴随着企业云上规模的逐年增长,构建系统的全面纵深防御、合规需求及云上转型的技术复杂性一直是近年来调查结果中最为关键的3个核心问题(见图1-1),而企业客户对于安全合规的关注更是呈逐年上升的趋势。

图1-1 企业上云面临的关键挑战

(来源:Paloalto《2022年云原生安全报告》)

在降本增效的大环境下,企业对于云上安全的投入保持着稳步增长的趋势,调查显示,2020年只有4%的受访企业在安全预算上超过了企业云上整体投入的20%,而到了2021年,这个数字已经提高至15%,如图1-2所示。

图1-2 在安全预算上超过企业云上整体投入20%的企业比例

另一个比较有意思的数据是企业使用的云安全产品供应商的统计,首先使用5个以下安全产品供应商的企业从2020年的41%提升到2021年的68%,而使用6~10个安全产品供应商的企业从2020年的39%下降到20%。这里一个很重要的原因是云原生安全产品的体系化整合,另外企业内部DevSecOps和安全自动化治理上的发展也有助于企业自身的安全运维更加统一化、体系化。

在企业上云并进行云原生化改造的初期阶段,DevOps是被广泛接受的概念,开发团队开始更新自身业务应用的开发流程管道,而安全团队很快意识到其工具并不适合以开发者驱动、以API为中心且基础设施无关的云原生安全模式。因此,不少以云原生安全为背景的安全应用开始进入市场,初期这些应用产品多是为了解决供应链生命周期中部分堆栈的问题而开发设计的,但就其本身而言无法系统地管理和报告整个云原生环境的安全风险,这就迫使安全团队在多个安全供应商提供的应用工具之间周旋,不仅增加了成本和系统复杂性,也引入了额外的风险点。随着云服务商和一些头部云安全厂商不断完善在云原生安全方向端到端的安全能力体系,企业在云上生产环境实践DevSecOps和自动化安全治理的进程加快了。

Paloalto的报告也显示,在自身软件供应链环节完成DevSecOps高度集成的企业出现因安全而导致的项目延期或利润降低等问题的概率是没有集成DevSecOps企业的九分之一。另外,RedHat在2022年的Kubernetes安全报告中也显示,已经有78%的受访企业正在开始或已经完成DevSecOps的深度集成。

自动化安全治理一直是企业系统化提升安全水平的重要方式。结合云原生的应用特点,自动化安全治理可以为企业的安全运维人员提供一个全局可视化的安全资产管理系统,该系统可以通过自动化的检测机制在企业应用构建与部署的关键点扫描镜像和应用模板中的安全风险,同时帮助发现开发运维人员在应用控制面的不当配置,阻断可能威胁系统安全的变更操作,并及时审计和通知上报应用运行时的威胁事件。在Paloalto的调查中,实现高度自动化安全治理的企业在内部安全事件的投诉率上普遍低于自动化在中低档位的企业的三到四成,同时在内部安全满意度的调查中明显高于其他企业。

在国内,中国信息通信研究院(以下简称信通院)2023年对云原生技术应用挑战的调研显示,安全性连续两年成为企业用户的最大顾虑,在2021年的调查中(见图1-3)大部分企业用户已经认识到云原生安全能力建设的重要性,近七成的受访企业计划在未来一年内提升自身云原生环境的安全能力。

同时,在对企业用户最关心的云原生安全问题调研中,容器和微服务相关安全问题排在前5名,如图1-4所示,其中容器运行时安全是企业用户最迫切的需求,超过一半的用户关心容器逃逸问题,而基于eBPF的云原生运行时安全正是本书关注的主要方向。

图1-3 未来建设云原生安全能力计划

(来源:中国信息通信研究院《云原生用户调查报告》)

图1-4 企业用户最关心的云原生安全问题

(来源:中国信息通信研究院《云原生用户调查报告》)

在海外,以云原生安全为背景的安全防护实践已经经过一定时间的积累。在CNCF开源项目全景图中,以云原生安全为背景的开源项目和公司数量都在持续增加,其中如Falco、Tetragon等基于eBPF技术的云原生安全明星项目在后续章节中会重点介绍。

与此同时,以云原生安全为背景的合规标准也先后落地,比如美国国家标准与技术研究院(NIST)在2017年最早发布的《应用容器安全指南》,解释了与容器技术有关的安全问题,并为云服务商和企业规划和实施运维容器提出了切实可行的指导建议;在2022年,针对云原生安全技术的发展趋势,NIST又提出了服务网格场景下针对微服务应用的DevSecOps实施指南,从云原生应用编码、应用服务编码、基础设施即代码(Infrastructure as Code)、策略即代码(Policy as Code)和可观测性即代码(Observability as Code)5个层面来指导企业将对应的安全措施应用到更加敏捷和快速迭代的软件生命周期中去。另外,美国政府联邦风险和授权管理计划(FedRAMP)在2021年发布了《容器漏洞扫描要求规范》,规范中描述了对使用容器技术的云系统进行漏洞扫描的特定流程、架构和安全考量,并从合规层面约束全部联邦机构实施。

在云原生安全合规标准中,不得不提到的是CIS Kubernetes Benchmarks,它是由非营利组织CIS(Center for Internet Security,互联网安全中心)结合众多服务商安全领域专家的建议定制发布的Kubernetes领域的最佳安全实践,可以帮助使用者在基于Kubernetes部署生产环境前进行相关的安全配置加固。除了基于开源发行版编写的通用合规准则,各头部云服务商也结合自身Kubernetes容器服务的产品特性定制化了服务商适配版本。标准中包含了对Kubernetes集群管控面节点和组件、etcd、数据面worker节点的详细安全配置规范,以及每条规范对应的威胁等级和影响最终扫描结果的评分标准。一些云服务商和开源社区也提供了基于CIS规范的基线扫描工具,以帮助用户完成对集群基础设施安全配置的基线扫描并给出加固建议,关于规范的详细内容可参考CIS社区的官方文档。

在合规标准之外,随着云原生相关技术栈的迅速发展,需要有一个体系化的方法论来概括云原生安全架构。为此,CNCF相继推出了《云原生安全白皮书》的v1和v2版本,进一步为云原生安全架构体系和方法论提供了相关指南。在国内,信通院联合业界数家在云原生安全领域有深入研究的云服务商或安全厂商,在2021年发布了《云原生架构安全白皮书》。白皮书从云原生基础设施安全、云原生计算环境安全、云原生应用安全、云原生研发运营安全、云原生数据安全、安全管理6个主要方向,全方位、系统化地剖析了云原生架构安全防护体系(见图1-5),为国内企业在云原生化转型过程中构建自身架构的安全防护体系提供了标准化的指导意见。

1.4节会基于两部白皮书的内容框架对云原生安全体系方法论做进一步的阐述。

图1-5 云原生架构安全防护体系

(来源:中国信息通信研究院《云原生架构安全白皮书》)