随着云计算和DevOps的兴起,容器技术和自动化成为软件开发中的必要手段,软件供应链也进入了自动化及CI/CD阶段。然而,容器技术和自动化虽然提升了软件的更新速度,但也带来了新的安全挑战。由于更新速度快,供应链一旦遭遇攻击,恶意代码可能会迅速传播到各个开发系统。在这一阶段,安全左移成为实现软件供应链安全的指导性思想,安全的价值体现在软件开发过程中的各个环节。
在此背景下,阿里云策划了一场关于云上安全的深度访谈栏目,汇聚阿里云内部众多产品技术专家,携手安全领域从业者,旨在通过全方位、多角度交流碰撞,分析容器安全与软件供应链安全之间的关系,揭示软件开发过程中存在的安全隐患与应对之道,帮助用户更好地建设和落地软件供应链安全及容器安全体系。
本期节目邀请到的是阿里云产品专家穆寰、阿里云容器服务高级技术专家匡大虎、阿里云容器服务技术专家黄竹刚,围绕软件供应链安全、容器安全的主要挑战以及阿里云如何帮助用户等维度展开了深入的讨论。
企业应用云原生化进入深水区,践行DevSecOps离不开容器安全
2024年7月,微软蓝屏席卷了全球,至少20多个国家的交通、金融、医疗、零售等行业或公共服务的业务系统受到影响。这一事件的发生再度引发了业界对软件供应链安全的担忧。
近年来,针对软件供应链的攻击事件愈演愈烈。去年9月,某黑客组织使用域名仿冒和星标劫持技术向开源包管理器PyPi植入一系列恶意包,攻击者可借此攻陷用户设备,窃取金融和个人信息,登录凭据等敏感数据。今年3月又爆出了一个威胁评分为满分10分的供应链漏洞,攻击者“卧薪尝胆”3年时间,通过一系列复杂的混淆和替换技术在一款开源软件XZ中植入了后门。幸运的是,由于发现及时,该漏洞并没有造成大范围的严重后果。
这些安全事件进一步反映出当下供应链安全的严峻形势。今年某海外安全厂商发布的《2024软件供应链攻击演化》报告中,自2019年以来,软件供应链攻击平均每年以742%的速度增加。同时今年某安全厂商的开源安全风险分析报告中对17个行业一千多个商业代码库进行了匿名分析,在分析结果中显示,其中84%的代码库中包含安全漏洞,更有74%的代码库包含高危安全漏洞。
现阶段,越来越多的企业将DevSecOps视为保障软件供应链安全的有力手段。DevSecOps 是一种将安全深度融入软件开发生命周期的新型软件开发实践方法。与传统开发流程不同的是,DevSecOps主张在软件开发的每个阶段都主动考虑和集成安全性,而不是将安全性视为事后的补充。
与此同时,容器安全在现代软件开发和部署中,与DevSecOps一起成为两个密切相关的概念。
在DevSecOps流程中,容器安全被视作整体安全策略的一个重要组成部分。这意味着企业在应用云原生化进程中需要在开发、CI/CD、部署和运行阶段都以自动化和持续监控的方式集成容器安全。同时DevSecOps流程中强调的协作和循环反馈的文化理念也能够保证企业容器化应用持续的安全水位。
容器安全面临的三个挑战
容器安全指的是基于容器技术的应用云原生化改造后的安全防护,主要针对应用容器化改造带来的重点安全风险和挑战。相较传统的架构,企业应用在进行容器化转型过程中的安全挑战来自以下三个方面:
首先是云原生平台基础设施。云原生平台层组件相较于传统架构引入了更多的配置项和隔离层,这就给企业安全管理运维人员提出了更高的运维要求。如何保证平台基础设施层的默认安全性,如何在遵循最小化权限原则基础上进行授权操作,如何建立云原生应用系统的安全审计和监控能力,这些新的挑战都需要云服务商和企业安全管理运维人员协同构建并最终实施到企业云原生化转型后的系统应用架构中。
其次是DevOps软件供应链。云原生弹性、敏捷和动态可扩展的特征极大地改变了传统应用部署模式,应用自身的生命周期被大幅缩短,而企业应用的迭代效率则大幅提升,在企业供应链架构变革的同时需要构建和实施适配供应链各阶段的安全防护能力。
最后是应用范式上的改变。随着微服务架构在企业中的广泛应用,传统的基于南北向流量的安全边界模式已经变得不适用,企业需要更加细粒度的身份认证和访问控制;同时Serverless和函数计算等新技术开始流行,对于云服务商在基础设施层的安全隔离性和监控能力提出了更高要求,而应用的容器形态则需要新的运行时安全监控告警和资产管理模式与之对应。
实现容器安全的改进策略建议
针对上述挑战,阿里云表示,绝大多数的企业云原生安全的发展都落后于应用的云原生化进程,而想要改进则需要集中在以下三个方向:
首先是身份和访问管理。线上授予的权限与实际需要的权限之间存在巨大差异,无疑会给攻击者可乘之机。
其次是漏洞和配置管理。大多数的企业生产镜像都没有经过安全加固和最小化的裁剪收敛,另外很多线上应用因为开发调试的一时方便而在容器层配置了过高的特权。
在云原生Kubernetes集群的典型攻击路径中,由于云原生技术架构的复杂性,容器应用、运行时、Kubernetes编排引擎、镜像仓库以及内核层都可能给整个应用系统引入新的风险,而近年来不断爆出云原生社区相关的CVE漏洞中,攻击者可以利用的攻击方式也是多种多样,像一般的提权、仿冒、篡改、抵赖、拒绝服务等典型攻击手段都出现在了近两年公开披露的漏洞利用方式中。
最后是监控和响应。由于大多数用户缺少针对容器资产的运行时监控和防护手段,在针对突发的攻击事件时无法有效完成定位和溯源。
因此,阿里云建议必须针对容器场景采取对应的安全防护手段。例如,默认安全和最小化授权,基于安全左移原则的漏洞和风险分级管理机制,建立容器部署的安全准入机制,针对容器的运行时监控告警以及云原生安全资产管理。
针对容器安全,阿里云的解决方案
在实践层面,围绕容器构建、部署及应用运行这三个阶段,阿里云推出了针对性的产品和服务。
针对容器构建阶段的安全需求,阿里云容器镜像服务 ACR 提供了隔离的镜像构建环境、智能化的镜像构建诊断、镜像漏洞扫描、镜像加签、SBOM 软件物料清单分析以及制品漏洞信息反查等多个安全特性,助力企业构建安全的容器制品。
针对容器部署阶段的安全需求,阿里云容器服务 ACK 提供了精细化的集群访问控制、完备的集群操作审计、与应用相结合的镜像验签、工作负载安全策略等安全特性。
针对应用运行阶段的安全需求,阿里云容器服务 ACK 提供了应用维度的最小化授权方案 RRSA、节点池和 Pod 维度的网络安全组和安全策略以及容器内操作审计、安全沙箱容器和机密容器等多个安全方案。
阿里云表示,针对容器软件供应链日益严峻的安全形势,容器服务ACK、ACR、ASM通过一系列安全产品能力,实现了“连点成线”的供应链风险分析和防御机制,同时面向企业安全管理员提供了开箱即用的产品能力。
今年,面向供应链安全的典型客户需求,ACR容器镜像服务支持OCI社区1.1版本的镜像和分发规范,标志着客户可以通过ACR管理和分发镜像签名以及SBOM这样的非镜像OCI制品,同时结合ACK的策略治理能力,帮助企业客户实现通用的制品自动化加签和验证方案,保证部署到生产集群中的镜像是完整可信的。
同时ACK容器服务还针对授权过大和容器逃逸后的节点内横向攻击等风险,有针对性地提供了对应的加固和防护能力。
阿里云网格服务ASM提供一个全托管式的服务网格平台,兼容社区Istio开源服务网格,用于简化服务的治理,包括服务调用之间的流量路由与拆分管理、服务间通信的认证安全以及网格可观测性能力,帮助企业实现应用无感的零信任安全。
基于此,用户可以通过结合ACR、ACK、ASM 所提供的多种安全能力以及阿里云云安全中心所提供运行时安全能力,构建涵盖整个软件开发生命周期的端到端的企业安全运营和防护体系。
结语:阿里云携手客户共筑供应链安全
实现软件供应链安全,不仅需要企业采用针对性的策略,还需要建立对应的企业安全文化意识。除此之外,阿里云认为,做好软件供应链安全还需要从多个方面入手:
首先,加强基础设施的安全性。阿里云致力于提供高可靠性和高安全性的云计算基础设施,为企业软件供应链提供一个稳定可信的平台基础安全能力。
其次,技术创新是保障供应链安全的重要手段。阿里云利用人工智能、机密计算等前沿技术,帮助企业监测和预测潜在的安全威胁,提升供应链的整体预警和响应能力。
最后,阿里云倡导普惠和协同的安全理念。阿里云容器服务会同上下游合作伙伴的紧密合作,通过提供灵活可扩展的安全解决方案,建立有关云原生和容器安全最佳实践和安全威胁情报的信息共享和责任共担的机制,在DevSecOps理念的指导下构建更完善的供应链安全防护体系。
在未来,阿里云容器服务会在内部践行DevSecOps流程的同时,还会通过ACK、ACR、ASM、云安全中心等服务提供涵盖容器供应链安全流程关键阶段的核心安全产品能力,携手客户共筑供应链安全。
下期预告
随着企业上云的加速和数字化转型,办公安全面临新的难题和考验。下期将为大家带来无影安全办公专场,分享无影AI云电脑构建的云、网、端一站式全面安全防护体系,如何助力千行百业安全办公。