解决方案分享|云原生视角下的应用全生命周期安全落地实践
发布时间:
2023-08-16 09:36
云原生的演进面临的安全风险
云原生的理念经过不断丰富、落地、实践,云原生已经渡过了概念普及阶段,进入了快速发展期。云原生技术以其高效稳定、快速响应的特点驱动引领企业的业务发展,成为企业数字业务应用创新的原动力。过去几年中,以容器、微服务、DevOps、Serverless为代表的云原生技术正在被广泛采纳,2020年43.9%的国内用户已在生产环境中采纳容器技术,超过七成的国内用户已经或计划使用微服务架构进行业务开发部署等,这使得用户对云原生技术的认知和使用进入新的阶段,技术生态也在快速的更迭。
而容器技术之于云计算的发展,已经成为目前主流的虚拟化技术,成为敏捷开发项目的选择,以Docker、Containerd技术为代表的容器技术,重点解决了容器技术使用和维护上的复杂度问题,通过对容器管理引擎以及容器镜像的标准化,降低了容器技术使用的复杂度,同时围绕容器技术构建应用生态圈,丰富容器技术在行业内的应用和推广,以容器、Kubernetes和微服务应用模式作为数智化转型的驱动力。
云原生技术架构充分利用了云计算弹性、敏捷、资源池和服务化特性,在改变应用的设计、开发、部署和运行模式的同时,也带来了新的安全要求和挑战。以容器为载体的云原生应用实例极大地缩短了应用生命周期;微服务化拆分带来应用间交互式端口的指数级增长;多服务实例共享操作系统带来了单个漏洞的集群化扩散;研发运营流程增加了软件全生命周期各个环节的潜在风险。云原生的特有属性带来了架构防护、访问控制、研发运营等领域带来了潜在的安全隐患。
云原生应用全生命周期安全落地要点
随着云原生安全近年来的不断发展,云原生安全需要关注容器的整个生命周期,针对生命周期中的各个阶段所存在的安全风险形成对应的应对手段,并且在安全运营、运营流程中形成较佳实践,形成完善的可控可靠的云原生安全防护运营体系。

图1 安全防护思路
云原生应用全生命周期的安全能力建设如图2所示,主要包括五个部分:分别为构建阶段的镜像安全能力,运行时阶段容器安全防护能力,对外暴漏访问后的应用安全能力,集群东西向网络隔离能力,以及针对基础平台安全防护的集群安全能力。

图2 云原生全生命周期安全防护
针对云原生的安全生命周期中存在的安全风险,建设全生命周期的安全风险检测和防护能力,关键建设内容如下:
全生命周期运营闭环:针对云原生环境下的所有资源对象建设资产盘点、资产加固、风险检测、风险响应、风险预测的防护框架思路,包括Kubernetes平台自身、Kubernetes平台节点、容器镜像、容器镜像仓库、容器化微服务,进而形成云原生环境下的全生命周期安全运营闭环。
供应链安全:针对节点/仓库镜像进行深度扫描,对镜像内存在的风险进行识别和阻断,解决存量和增量的风险管控。通过和现有DevOps流程进行对接,以安全工具为抓手,将安全动作进行左移,抢先一步发现问题,降低修复成本。通过中文正则方式解决自定义策略难以定义的痛点。
可信镜像源:基于行业和集团需求场景,建立统一安全可信镜像源,针对当前使用的主流镜像进行持续加固和优化,确保获取基础镜像时,所用镜像符合安全标准。
容器运行时安全:云原生应用安全保护平台运行时检测以MITRE ATT&CK为指导框架,对入侵事件进行所属分类,明确各类入侵事件以及攻击链上所处位置,并构建恶意行为的完整攻击链,使安全运维人员更方便地进行事件回溯和后续预防。
基于“不可变基础设施”的理念,通过对容器内行为进行学习,建立安全基线模型,通过白名单模式,可以有效提升异常事件检出率,可以用于防御0day或1day风险,同时针对对容器内异常行为实现进程级别阻断,防护粒度可细化到系统命令,用户进程,具体文件;
集群安全较佳实践:提供对Docker、Kubernetes等集群的不同版本进行合规性风险扫描,发现云原生集群可能存在的配置风险,支持对主流的安全检测标准检测,基于产品提供可视化的基线检测结果和修复建议,解决配置合规性带来的风险。
容器网络安全:基于零信任的微隔离思想和技术思路,对容器集群内的网络流量进行持续信任评估,并且实现动态的自适应访问控制,自适应微隔离实现集群内的东西向业务调用、东西/南北向的网络攻击进行风险预测和防护,并且以“不可变基础设施的理念”实现全自动的构建和管理容器集群内东西向的微隔离安全策略。
云原生应用全生命周期安全应用措施
以云原生应用安全保护平台作为安全抓手,建立全生命周期运营闭环体系;同时平台除了提供的云原生各个阶段的安全能力之外,还可以直接将能力直接集成到集团容器云平台之中,通过定义的上线流程规范中,云原生安全组件为必须勾选的安全工具,后续当集团用户使用容器云平台上线业务时,可通过平台进行强制限制进行组件安全的勾选。
当集群本身发生扩缩容的时候,平台通过自动调度的算法进行分析出新加入的节点,实现新节点的自动化部署,并且对新节点进行防护,从而实现安全平台和容器云平台的联动,进一步实现云原生安全的内生化建设。
以下为云原生应用安全保护平台的重点使用功能:
01.以MITRE ATT&CK为指导

未知攻,焉知防。在入侵检测时,云原生应用安全保护平台以ATT&CK为指导框架,对入侵事件进行所属分类,明确各类入侵事件以及攻击链上所处位置,并构建恶意行为的完整攻击链,使安全运维人员更方便地进行事件回溯和后续预防。
02.自适应行为基线

基于“不可变基础设施”的理念,每个容器只运行特定软件,其行为模式是可以预期的,这为容器行为白名单模式提供了理论依据。云原生应用安全保护平台通过对不同容器内行为进行学习,持续建立自适应安全基线模型。当监测到行为模型外的进程、文件访问、异常网络连接和系统调用时,会通过关联分析风险事件列表,进行告警处置。通过白名单模式,可以有效提升异常事件检出率,可以用于防御0day风险。
03.镜像可持续性自动修复
基于安全左移的思想,在镜像检测和加固的阶段实现左移动作,进而实现DevSecOps的方案构建;镜像安全检测通过在持续构建流程中进行介入和卡点,实现多卡点检测控制,尽早将风险暴露出来,避免业务镜像“带病上阵”;安全卡点动作提供多种维度、多个阶段的支持,其中包括IAC检测、容器镜像文件检测、容器镜像自动签名、容器镜像自动同步等;当发现容器镜像存在安全风险,提供容器镜像检测报告,运营人员根据报告内容中的DockerFile修复建议可以实现一键式的修复动作。
04.可信镜像源
可信镜像源:针对容器镜像供应链存在的痛点,建立可信镜像源(黄金镜像),对基础镜像的来源进行管控,确保使用的基础镜像是安全可信;在镜像同步过程中通过容器镜像自动签名和加密的方式,解决镜像泄露或中间人攻击的安全风险;镜像存储是以明文的方式进行,一旦镜像发生泄露后将发生的数据泄露,针对镜像明文存储所带来的安全隐患,提供镜像存储的多种机密方式,并且完成国密算法的引入,解决镜像明文存储造成的安全隐患。

05.动态检测扩展
当威胁情报系统发现针对云原生集群爆发新一轮0day或Nday时,依赖常规检测引擎无法精准检测和识别,通常需要通过更新检测引擎规则库来实现覆盖,此时无法对集群进行快速审查和确认风险,为解决同类问题,云原生应用安全保护平台支持手动上传自定义检测PoC,以无害化方式进行快速检测和响应,对可能存在漏洞进行精准识别和预警。
结论
通过云原生应用安全保护平台的建设和落地,填补集团云原生安全领域的空白,进一步提升扩大云原生的生产力;同时云原生应用安全保护平台通过安全左移的思路,自动化集成到业务持续构建流程中,在业务流程中加入安全卡点,降低后续安全运营成本;并且平台通过自动化集成到容器部署流程中,实现业务扩缩容时自适应覆盖,提高安全运维交付率。





