近年来,平安云技术的不断创新应用推动了云原生技术,如集群、容器和Serverless等,在平安云平台上的广泛应用和推广。从最初的平台建设到全面的集团容器化,再到全集团协同推进云原生生态,平安云成功实施了金融云原生战略。通过基础能力建设、应用推广、标准制定、体系化及生态共建等五个关键发展阶段,构建了平安云原生成熟度等级评估体系,并划分了云原生的八大子领域,这些领域分别处于孵化期、发展期和成熟期。
传统的安全防护模式已经无法满足云原生安全的需求,因此对云原生安全的需求不断增加。平安集团经过多年的探索和实践,总结出了一套适用于平安的云原生安全解决方案,并已经开始实施和规划平安集团的云原生安全能力建设。
2018年平安集团开始建设容器云CaaS平台,从初始平台建设到集团全面容器化、全集团统筹推进云原生生态,落地金融云原生战略,历经基础能力建设、应用推广、标准建立、体系化及生态共建突破关键能力五大关键发展阶段。
提供云原生基础设施平台、云原生应用平台及云原生安全平台等平台,并通过云原生生态共建、技术共享,鼓励成员公司输出自有中间件能力,不断丰富云原生应用形态。
图1:平安云原生建设历程
截至2023年中,基于平安云原生成熟度等级评估,云原生八大子领域分别处于孵化期、发展期和成熟期,技术仍需不断迭代升级。
其中资源管理、DevOps、运维运营和可观测性四大领域作为2021-2022年度平安集团云原生重点推进领域,技术能力相对成熟;
云原生安全和应用架构设计(微服务)领域处于发展期,是2023年平安集团重点推进领域;
混沌工程和云原生中间件领域起步较晚,还处于孵化期,预计为未来几年的平安集团重点发展领域。
1.建设总体思路
通过调研国内外云原生安全前沿技术,分析平安集团及各成员公司在云原生安全所面临的威胁和困境,在2021年,平安集团云原生安全体系建设工作拉开了序幕。
云原生安全建设工作主要围绕云原生安全的技术、管理及人员三个方面开展,另外通过构建云原生安全成熟度模型来指导云原生安全整体建设工作。
将云原生安全能力嵌入到整个云原生应用生命周期中,构建基础环境、计算环境和应用环境云原生安全能力,从研发运营安全及安全管理进行整合和改造,分层构建、全面覆盖,打造平安集团云原生安全防护体系。
同时,平安集团及各成员公司根据自身的云原生安全需求,也在做积极的探索与实践,通过在云原生安全共建共创活动,在云原生安全场景中进行共同调研与试点运行,并将实践经验在集团内分享及推广具有重大意义。
2021年,信通院国内首发云原生成熟度模型,基于此模型开展了《平安集团云原生成熟度模型》的构建工作,并在2022年7月对内发布《平安集团云原生成熟度模型》,用于规范化云原生成熟度模型,从云原生架构能力、应用能力、安全能力多维度出发,对其中各项指标成熟度进行了明确定义,以进一步评估云原生平台或应用的建设和发展,指导云原生体系的建设。
平安集团的云原生安全建设体系,将围绕《平安集团云原生成熟度模型》中云原生安全能力层进行构建并评估,云原生安全能力层包括基础安全域、计算环境安全域、应用安全域、研发运营安全域和安全管理域五大能力域。
图2:云原生安全成熟度模型
平安集团的云原生应用防护平台是基于云原生安全成熟度要求和信通院的标准构建,旨在满足制品安全、运行时安全和基础设施安全等多方面的云原生安全功能需求。
该平台具备研发与运营阶段的信息双向反馈和一体化管控能力,能够实现价值流动,助力集团构建高效便捷的云原生安全防护体系。并整合了平安集团现有的多种安全能力,如代码安全、交互式应用安全检测、动态应用安全检测、主机安全及云安全态势管理等,形成了一组集成了安全性和合规性功能的解决方案,旨在帮助保护开发和生产过程中的云原生应用程序。
通过使用该平台,平安集团可以更好地保护其云原生应用程序,确保其安全性和合规性。
图3:云原生应用防护平台
4.云原生安全管理体系
在信息安全管理体系中,引入云原生安全管理体系可以带来以下收益:
将安全内嵌到云原生应用全流程的设计开发过程中,通过设置安全卡点实现安全管理。可以确保在应用开发的早期阶段就考虑到安全问题,从而减少潜在的安全漏洞和风险。将安全工具集成到生产过程中,建设自动化安全流水线,逐步减少人工安全干预。通过自动化的安全工具和流程,可以提高安全管理的效率和准确性,减少人为错误和漏洞。企业安全的职责边界从开发、运维、安全的各司其职,转变成责任共担。这意味着所有相关方都承担着保护信息安全的责任,而不仅仅是特定团队或个人的责任。这种共同承担责任的方式可以促进跨部门的合作和沟通,提高整体的信息安全水平。通过引入云原生安全管理体系,可以更好地应对云原生环境下的安全挑战,提高应用的安全性和可靠性。同时,这也有助于提升信息安全管理水平,保护核心信息资产免受威胁。5.云原生安全人员体系
平安集团成立了云原生安全技术工作组,由集团及各成员公司云原生专家组成,专注培养云原生安全专业人才。该工作组开设了一系列的云原生培训课程,提升当前安全团队对云原生的认识和理解,并定期开展云原生系列的专题攻防对抗和技术沙龙分享,及时了解最新云原生安全技术。通过这些努力,平安集团已经具备了一批优秀的云原生安全攻防和安全运营人才。这些人才不仅能对云原生的入侵事件进行风险监测,通过对入侵事件的快速判断,对真实入侵事件进行阻断,遏制攻击者进行内网的横向操作,同时对云原生安全体系的建设投入,对日常的云原生安全威胁防护都发挥了重要的作用。云原生安全专业人才的培养对于平安集团来说非常重要,因为云原生安全事件的研判、及时响应与处置需要专业的云原生安全人才来完成,以避免出现盲区,弥补平安集团在云原生安全人才方面的缺陷。6.云原生安全建设里程碑
从2020年开始,平安集团梳理了集团及各成员公司的面临云原生安全风险,在此基础上汇总了云原生安全需求,调研了国内外的云原生安全防护解决方案,在2021年输出了平安的云原生安全成熟度模型初稿,最终明确平安集团云原生安全建设总体方案。- 2022年搭建云原生应用防护平台,建立运行时安全基础能力
2022年在平安云PKS集群部署云原生应用防护平台,具备了资产发现、合规基线检测、运行时安全检测及集群安全风险检测等功能,并正式发布平安的云原生成熟度模型。在此期间,与平安云完成了集群初始化时候默认安装云原生安全,具备了集群容器运行时的入侵检测和防护能力。- 2023年完善云原生安全制度规范,深化云原生研发运营安全能力建设
随着云原生运行时安全相关能力建设完善,在2022年加强了管理体系制度的建设,相继发布了Kubernetes、Docker安全基线标准,并开展集群容器基线符合率考核工作,提升了平安云原生基线的安全能力。针对容器镜像安全管理要求,对内发布了《容器镜像安全管理办法(试行)》,用于规范在容器使用镜像的安全管理提升容器漏洞修复效率,降低容器安全风险,保障系统和业务安全稳定运行。平安集团依托平安云平台、神兵流水线及安全软件开发过程管理平台(SSDLC)共同构建镜像安全左移机制,实现基础镜像安全管理、CI/CD流水线镜像扫描和漏洞修复等环节,最终完成平安集团所有流水线的镜像安全扫描。基于ATT&CK云原生安全攻防矩阵模型,集团与个别成员通过紫军演练方式完成了35类云原生安全技战术的有效性验证和自动化监控场景覆盖,进一步验证和提升了安全团队在面对云原生安全攻击时候的应急处置能力。在2024年将进一步夯实云原生安全防护建设,随着微服务、API和Severless技术不断运用,安全团队需要补充云原生应用安全防护能力,例如:微服务安全治理、API资产发现及检测、Serverless安全防护能力等。除此之外,在云原生网络下,仍需进一步提升云原生网络东西向流量微隔离能力,实现云原生应用的细粒度网络隔离管控。最后,紧跟云原生应用技术的发展,持续完善提升云原生安全能力。1.镜像全生命周期安全实践
平安研发管理团队在业务系统开发中,通过使用神兵流水线(研发运营管理平台),实现了业务系统从代码开发、构建、部署到运行等多个阶段的闭环管理。平安软件开发安全团队通过与流水线平台的SSDLC(安全软件开发过程管理平台)打通,成功引入了DAST、SAST、IAST和SCA等安全产品,并进行了全面的检测和管控。随着业务系统的容器化改造,将代码打包进入镜像进行部署和上线。通过镜像安全左移机制,实现了基础镜像的安全管理、CI/CD流水线镜像扫描和漏洞修复等环节,最终完成了平安集团所有流水线的镜像全生命周期管控。(1)实践经验
平安集团结合镜像全生命周期安全管控节点,分成了基础镜像引入、流水线镜像构建及镜像部署上线三个阶段,并通过不同的安全手段进行安全管控。具体如下:1.基础镜像安全管控
为了确保镜像的安全性,严格控制了镜像的外部引入和上传。所有上传的镜像都需要经过上传审批,并且只有通过安全扫描合格的镜像才能允许进入镜像仓库。此外,针对基础镜像的管控,要求必须有安全版本才能允许被流水线引用,从而打造了黄金镜像仓库。定期对黄金镜像仓库的基础镜像进行扫描,一旦发现有不安全版本的镜像,会及时淘汰并更新。2.流水线镜像构建安全扫描
在流水线镜像构建完成后,SSDLC平台会对镜像进行安全检测。基于检测结果,判断是否通过安全门禁,只有符合要求的镜像才能被允许上传到生产镜像仓库。对于存在风险的镜像,将禁止其上传,并要求重新修复漏洞后重新发起流水线,直到符合安全门禁要求。
3.镜像部署上线管控
对于非流水线构建的镜像,例如开源镜像和供应链镜像等,在上传到镜像仓库后,云原生应用防护平台会实时进行安全检测,并标记出可能存在风险的镜像。同时,还会监控集群中是否存在非法运行的风险镜像,并及时中断其部署和运行,从而实现部署上线的安全管控。
(2)实践成效
在镜像风险修复中,通过在早期构建黄金镜像仓库和完善的基础镜像漏洞修复流程,显著提高了镜像漏洞修复的效率。从源头上控制了镜像流水线引用基础镜像的安全性,并通过安全门禁和部署上线管控等机制实现了一系列全流程管控。这些措施实现了安全能力的左移,从而极大降低了容器运行时的安全漏洞攻击风险,为业务提供了更强大的安全保障。2.集群基线配置修复实践
云原生安全基线修复是一种主动防御策略,旨在通过标准化和自动化的方式,确保云原生应用的安全性。这不仅包括对已知漏洞的修复,也包括对新出现威胁的预防。通过修复安全基线,企业可以降低被攻击的风险,提高业务连续性,保护用户数据和隐私。总的来说,云原生安全基线修复是应对复杂安全环境的重要手段。(1)实践经验
4.基线内容确认
参考外部CIS条例,由安全方输出初版基线内容,再邀请平安内部云原生运营相关人员,共同评估基线可落地性、必要性,并记录无法落地基线原因,输出最终版基线内容。基线的内容主要根据集群节点的属性、主要组件、容器相关划分维度,具体如下:工具支撑:借助工具支持,通过定制服务满足平安基线的个性化需求,并在非工作时间定期进行检视。源头管控:与云原生运营团队紧密合作,评估新交付的不同版本和区域集群基线配置是否达标,推动相关团队进行整改,确保新交付集群无安全基线配置问题。同时,针对容器运行时基线,通过对基础镜像的管控以及在部署发布流程中对yaml文件的检查与卡点,避免因过高权限、不安全的配置(如检查ssh服务、敏感目录挂载、容器资源限制等)导致容器运行时基线问题在线上产生。存量修复:对于已产生的存量基线问题,明确资产归属,确定责任归属,并与云原生团队共同制定合理修复方案。借助运维平台的能力,提供便捷的修复途径,提升修复效率。持续更新:定期评估和更新安全基线配置,确保其与最新的安全威胁和技术发展保持同步。(2)实践成效
云原生安全基线修复能够有效防止潜在的安全威胁。通过对系统进行全方位的安全检查和修复,可以及时发现并处理各种安全隐患,避免因安全问题导致的业务中断或数据泄露。在修复过程中,会对系统进行优化和升级,使得系统运行更加稳定,响应速度更快,从而提高工作效率。帮助企业节省成本。虽然初期可能需要投入一定的成本进行修复,但长远来看,由于避免了因安全问题导致的各种损失,实际上是节省了成本。云原生安全基线修复对于平安来说具有重要的意义。它不仅能够保护平安的信息资产,提升运行效率,还能够提升对成员的信誉度,节省成本。只有通过不断地优化和升级系统,才能够保证系统的安全性和稳定性,从而为成员公司的发展提供有力的支持。3.K8S APIServer日志审计实践
在Kubernetes集群中,审计功能提供了与安全相关的、按时间顺序排列的记录,审计记录最初产生于 kube-apiserver 内部,每个请求在不同执行阶段都会生成审计事件,这些审计事件会根据特定策略被预处理并写入后端。API Server的审计日志可以帮助集群管理人员记录或追溯不同用户的日常操作,是集群安全运维、云原生安全应急响应、分析溯源中的重要环节。落地实践k8s日志审计,同时基于业内ATT&CK、微软云安全、K8s等攻击矩阵,并加入平安云安全实验室攻防经验融合制作的云原生安全矩阵为基础,开展云原生安全攻防演习,验证、优化审计策略。(1)实践经验
K8S APIServer的请求处理流程存在多个阶段,其中包括认证、审计、限流、鉴权等。审计是K8S APIServer请求处理流程上的其中一环,是对K8S APISever能力的扩展。1.k8s日志审计策略
策略确定要记录的内容和用来存储记录的后端,当前的后端支持日志文件和 webhook。审计日志记录功能会增加 API server 的内存消耗,因为需要为每个请求存储审计所需的某些上下文。内存消耗取决于审计日志记录的配置。审计策略定义了关于应记录哪些事件以及应包含哪些数据的规则。处理事件时,将按顺序与规则列表进行比较。第一个匹配规则设置事件的审计级别(Audit Level)。已定义的审计级别有:- Metadata - 记录请求的元数据(请求的用户、时间戳、资源、动词等等), 但是不记录请求或者响应的消息体。
- Request - 记录事件的元数据和请求的消息体,但是不记录响应的消息体。这不适用于非资源类型的请求。
- RequestResponse - 记录事件的元数据,请求和响应的消息体。这不适用于非资源类型的请求。
总而言之,如果策略不恰当,未对操作记录进行过滤,可能会造成集群的内存资源浪费,增加API server的内存消耗。2.组织安全演练,持续优化审计策略
开展云原生安全演练,攻击项覆盖平安集团云原生安全矩阵(8个阶段,71种攻击技术),根据攻击操作定位、记录API server日志内容,同时统计整体请求动作等存储占比,总结归纳攻击日志特征,从而优化采集策略,优化日志存储规则,压缩占比统计等。待新策略环境配置完成后,再次执行攻击验证新策略有效性。最后根据审计日志设置自定义告警规则。(2)实践成效
k8s审计落地实践,可提升整体云原生安全响应率,同时借助云原生安全演练,通过全方位攻击监控,一方面验证现有云原生安全能力覆盖度,持续赋能云原生安全产品,优化防御策略。另一方面,持续优化K8s日志审计策略、K8s日志存储规则、存储占比等。理想情况下,最终落地推广,自定义规则形成攻击告警。4.云原生场景紫军攻防演练实践
平安在云原生安全的攻防演练中使用了多种演练模式,其中包括紫军(Purple Team)模式。与标准红队之间的区别在于,紫军模式的攻击和防御方法都是预先确定的,攻击方需告知防御方预定的攻击计划和攻击实时进展,并按照防守方要求进行攻击重放和攻击细节说明,防守方也有义务及时反馈攻击方操作效果,攻防手法透明而持续,协作迭代,通过演练持续提升安全态势。(1)实践经验
1.云原生安全攻防矩阵
为了便于疏理平安云原生场景面对的安全风险,通过分析攻击Docker和kubernetes环境的公开案例,依照MITRE的ATT&CK矩阵框架,结合平安集团的蓝军实践案例,参考业界提出的各种云原生攻防矩阵(如微软的Threat Matrix for Kubernetes,CNCF的MITRE ATT&CK Matrix for Kubernetes,阿里云的云上容器ATT&CK攻防矩阵等),总结出平安集团的云原生安全攻防矩阵并持续维护,作为平安集团紫军演练涉及的云原生攻防技战术的依据。2.云原生安全紫军攻防演练剧本
根据平安集团云原生安全攻防矩阵,结合合作的各个成员公司实际云原生技术落地环境和演练特殊需求,编写云原生安全紫军攻防剧本。该剧本模拟实战中黑客攻击云原生环境逐层深入至拿下整个集群的过程,依照黑客当前所持有的权限不同和达到的目的不同,分为四个阶段:围绕这四个阶段,将71项战术项细化为剧本演练项103项,并编写配套的云原生安全攻防技战术手册供红蓝双方查阅,做到演练中使用的攻击操作透明化。平安集团紫军攻防演练的设计目标是通过演练可闭环的对企业安全建设提升给出方向。整体共分为5个阶段:- 准备阶段:该阶段由紫军确定参加演练的红蓝双方具体人员和时间安排,确定参加演练的资产范围,敲定备用权限等交接方式,明白红蓝紫三方沟通记录方式等其他细节;
- 演练阶段:该阶段按照云原生攻防演练剧本进行演练,演练过程中红蓝双方实时沟通,紫军居中协调;
- 复盘阶段:该阶段根据演练阶段原始记录分析整理形成演练报告,并通过红蓝紫三方复盘会的方式对争议点解答,使攻防演练的价值最大化;
- 咨询规划:该阶段针对演练报告中云原生环境暴露出的问题提出缓解解决措施,再多方沟通争取对解决方案的认可,并列入云安全建设规划排期中;
- 提升阶段:该阶段通过复测等方式对云原生安全建设的效果进行评估,判断方案实际对环境安全提升的成效,整理攻防演练后续思路。
(2)实践成效
为了更好的暴露出平安集团云原生安全环境短板,需要采用可量化的方式对攻防演练效果进行评估。平安集团紫军对参与演练的红蓝双方采用不同的评估指标:攻击覆盖率=攻击方技战术成功执行项数/演练剧本包含技战术项数*100%,该指标评估红军在本次攻击方技战术成功执行项数演练中实际执行成功的演练项,可指导红军在演练中更多的尝试执行剧本中包含技战术。安全设备告警率=演练中产生安全设备告警的演练项数/剧本中技战术应告警项数*100%,其中剧本中技战术应告警项数由平安集团运营,剧本编写者,以及安全设备厂商共同确认。该指标衡量在实际环境中面对安全入侵事件的安全设备的有效性。综合防御覆盖度=演练中产生防御行为的演练项数/攻击方技战术成功执行项数*100%,该指标衡量防御体系通过告警、应急响应、威胁研判、溯源等对攻击技战术的覆盖。1.混合架构微隔离
在大规模云原生应用场景中,网络基础设施面临着动态变化的挑战。传统的访问控制方案,无论是硬件防火墙还是iptables方案,都存在着维护成本高、性能低下等问题,导致东西向流量只能提供粗粒度的安全控制和过滤,无法做到点对点微隔离的访问控制,无法满足金融级的网络安全要求。未来将考虑依托Linux内核可编程技术eBPF,构建高性能、安全可靠的云原生网络。通过在网络基础架构层实现网络访问的精细化控制,可以满足金融应用微隔离的高安全可信需求,从底层提升云原生网络的控制和转发性能。同时,还将开发高效灵活的运维平台,以应对未来可能出现的更多挑战。2.微服务安全治理
借助Service Mesh的方式,将服务治理能力下沉到sidecar,实现与业务的解耦,从而提升全行架构治理和技术迭代的敏捷度。通过sidecar的方式,无需为不同语言的能力重复开发,sidecar的升级也可以做到透明,对业务无感。具备标签路由、熔断、限流、故障转移、服务鉴权、出口代理、配置隔离、sidecar更新、流量计节点监控等功能。未来将考虑基于istio的安全解决方案,将为每个应用分配数字证书,并通过sidecar拦截网络流量,进行双向证书校验和访问策略验证。只有符合访问策略管理要求的网络请求才会被放行,否则将被拒绝。通过这种方式,将进一步提升云原生网络安全水平。3.无服务器安全防护
尽管无服务函数带来了许多便利,但传统环境中面临的安全问题和攻击手法在无服务函数中也同样存在。例如,SQL注入攻击、越权类漏洞、不当配置泄露凭据等问题,以及利用容器特性的攻击面,如通过函数更改关键文件系统挂载点实现逃逸等问题。由于可供租户控制的措施相对有限,因此如何适配无服务环境的安全能力成为了未来关注的重点。无服务函数从HTTP API接口、云存储、消息队列等各种途径消费数据,而企业往往难以清点这类复杂的调用逻辑和不统一的数据结构,难以依靠传统的WAF来防护风险。运行时应用程序自我保护(RASP)等侵入式的应用层安全解决方案在无服务器防护中可以弥补无服务器函数运行时防护的不足。通过结合应用部署流程,可以在开发流程中自动插桩到无服务应用中,实现上线即防护。业界也推出了面向云原生场景的WAF产品,支持基于容器、镜像、命名空间等维度配置防护。通过基于云原生的不变基础设施特性,可以智能梳理业务调用的正常行为,形成白名单,并结合eBPF、iptables等特性实现引流与阻断,预防未知风险。无服务器系统按调用方向区分涉及四种类型,分别是内部服务互访、入站访问、出站访问和终端用户。针对可能存在的访问通路,未来需要考虑引入不同手段来保障数据和通信的安全性,并提供最小化的权限。大湾区专刊现已发布第1辑和第2辑,集合了全国数十家金融和科技机构的网络安全工作经验总结,更邀请了大湾区港澳金融机构的安全专家分享独到见解。文章内容涉及防御体系、安全运营、数据安全、研发安全、业务安全、资产管理、攻防演练、前沿分析等主题方向,希望能为从业者提供网络安全防护方面的整体思路,向行业传播可持续金融创新和实践经验,为推动可持续金融生态发展汇聚智慧与力量。
安全村始终致力于为安全人服务,通过博客、文集、专刊、沙龙等形态,交流最新的技术和资讯,增强互动与合作,与行业人员共同建设协同生态。