北向峰会是集聚业界战略决策者、建议者、执行者的行业闭门会议,历届北向峰会的行业趋势探索以及战略性指导意义,使其成为安全行业别具一格的风向标。
面向2021,北向峰会以【极光论坛】、【山海论坛】、【都江堰论坛】、【文森峰论坛】四个模块,深入研讨了安全行业战略发展之路。嘶吼作为会议承办方,全力支持与扩展峰会对行业发展的战略性意义。根据【北向峰会2020】重要内容,嘶吼安全产业研究院与北向峰会共同编撰成《北向文集》,文集将以连载的方式在“嘶吼专业版”独家发布,向大家分期呈现,每日更新,敬请关注!
14期 都江堰论坛
安全平行切面:我们要改变什么,我们要建设什么
1 缘起:大型数字化业务的复杂性爆炸
今天网络空间安全保障面临的最大挑战,是复杂性爆炸。特别是大型数字化业务,系统、网络、应用、供应链都在高速发展和快速变化,云上业务和安全边界实时弹性扩缩,进一步加剧了这一挑战。以前在小规模场景下简单的安全问题,在快速变化的复杂性爆炸场景下都变成巨大的挑战。比如最基础的数字资产盘点,在复杂性爆炸场景下,准确,全面,及时的刻画网络、设备、系统、应用、模块、数据等资产,对于目前整个业界都是一个巨大的挑战。与此同时,运行在系统和应用空间之上的数据安全保障则面临着更大的复杂性挑战,因为数据链路触及范围更广,动态性更强。数据像血液一样流转在业务的每个环节中,复杂性也来自于此——数据流转在大型复杂场景下如何跟踪溯源,如何保障数据血缘的准确性和及时性,也是困扰业界的共同难题。由此导致数据分类分级也常常难以保证准确全面,给数据安全工作带来了巨大障碍。
要有效应对这些挑战,需要我们对系统和应用有更深入和广泛的洞察和干预能力。传统的边界安全或者外挂式安全已经很难满足复杂性爆炸场景下的安全保障工作的需要,内生安全是未来,这点已经是安全业界共识。
但是大型数字化业务在实践内生安全时,很快就会发现容易落入一个两难困境:内生安全推动业务和安全深入耦合,但深入耦合后双方团队的节奏预期却经常是冲突的。比如,在安全治理时,安全团队辛辛苦苦推动各基础设施和应用服务集成了一个关键安全增强组件,可能因为基础设施的一个小bug或者业务的一个需求变更回滚,部署率一夜回到解放前。这种业务和安全深度耦合造成的问题在漏洞应急修复的时候更加明显:安全团队需要小时级的止血响应,而大型业务团队经常面临着十几个版本的碎片化测试和稳定性灰度上线压力,无法满足安全应急要求。这种因为安全与业务深度耦合导致的“绑脚走路”两难困境也显然不是安全未来的出路。
2 安全平行切面:我们要改变什么
在数字化业务复杂性爆炸,强耦合式的内生安全可行性低的困境之下,安全基础设施的未来应该走向何方?
我们其实需要的是业务部署维度与安全部署维度做到正交融合 –– 两者既能融合为一体,又能独立解耦,各自独立发展,而不是绑在一起演进。这种正交融合是什么呢?很难用现实的物理场景来类比,但是科幻影片中这样的场景非常多。如法国科幻影片《星际特工:千星之城》里特工Valerian通过平行空间跨维度追踪星际黑市交易;或者是诺兰导演的《星际穿越》中Cooper从五维时空横跨历史来追溯女儿Murphy房间并传递黑洞关键参数数据。这些场景展现出在高维视角可以把低维空间展开并做应急的干预或者是深入的审计。
有了这样正交融合的安全基础设施,安全团队就能够更好的应对复杂性爆炸带来的安全挑战,包括:
1.【感知覆盖】 感知覆盖是一种安全领域“看得见”的能力,做不到感知覆盖就很难保障系统安全和数据安全。但达成这个目标挑战艰巨,特别是应用内部行为的内视和细颗粒度数据的流转追溯。如果安全基础设施能够融入应用系统内部,且可以根据安全需求来调整感知目标,则能极大的提升感知覆盖能力。
2.【应急攻防】 在安全应急时往往需要快速阻断攻击链,并在有条件的情况下向主动蜜罐引流。这里的要求是低漏报、0误报,避免误报带来的应用服务连续性事故。在应急时让业务方快速修补漏洞并不现实,如前文所说在大型复杂环境中一个漏洞修复往往需要大量的测试、灰度工作,甚至有十几个碎片化版本需要匹配,注定时间会比较漫长。在这种应急情况下,正交融合的安全基础设施能够用于快速阻断攻击链并且容易在各种场景下适配。
3.【治理与布防】 在复杂性爆炸的场景下,在安全治理上的投入经常远大于做安全攻防的投入,甚至超过80%的安全成本是治理投入(包括数据安全治理)。现在治理的效率往往非常低,正交融合的安全基础设施可以有效的改变这一现状。再进一步,安全需要灵活部署安全阵地。攻防时候是人与人的对抗,核心是知己知彼。如果所有的防御体系都一样,那么有经验的攻击者总能找到机会来绕过这样僵化的防御体系。先进的防御体系一定要有差异化的机制才能有效的进行防御。这些都要求安全防御阵地能够与应用解耦并独立变化。
这样的正交融合的安全基础设施如何构建呢?我们需要链接两个正交维度空间的支点,切面(Aspect)恰恰提供了这样的一个支点。面向切面编程(Aspect-oriented Programming, AOP)是1997年Gregor等学者在著名的ECOOP编程语言会议上提出的,至今已经20多年。当时研究面向对象编程(OOP)的学者发现OOP不能解决所有的问题,特别是涉及到大量类(Class)的横切(Cross-cut)系统性功能很难用OOP解决,所以他们提出了AOP。AOP通过预编译、运行时动态代理、注入等方式能够在不修改原码情况下给程序动态添加或修改功能。AOP被提出后在AspectJ和Spring等项目中有所应用,但一直还没有大规模影响。我们发现,将切面的概念应用到安全场景中,可以构建安全所需要的正交融合的平行空间,从更高维度来进行安全的攻防,非常好的满足了我们正交融合的安全基础设施的需求。我们将这种基础设施称为“安全平行切面”。
3 安全平行切面:我们要建设什么
独立维度、平行融入的安全基础设施
安全平行切面是一个安全基础设施,通过嵌入在端管云内部的各层次切点使得安全管控与业务逻辑解耦,并通过标准化的接口为安全业务提供内视和干预能力。
安全平行切面由一些关键功能原语支撑构建而成。
首先是切点体系。支撑上层安全功能的实现,要有大量切点的植入,才能将安全切面空间和应用空间结合。这些切点植入有很多方法,如流量层(网关/Service Mesh)、动态(AOP/hook)和静态框架API接入都是很好的切点植入方法。
其次是数据内视。如果没有对应用内部数据流和状态的观察能力,那么切面跟外挂式安全没什么区别。内部的数据包括Session应用上下文、Session安全独立的状态空间、调用栈信息等。在数据内视能力支撑下,安全平行切面的攻防和治理效果会比外挂式安全有质的提升。
然后是同步单元和异步单元。快速的安全阻断工作可以放在同步单元进行高速轻量级处理(H0),而比较复杂的操作和数据收集工作则可以放在异步单元进行处理。异步单元又可以分为数据传到本机进行处理的L0近源处置,以及传到云端做离线处理的L1处置等。
做安全基础设施最大的挑战除安全功能外,就是要有保障。安全基础设施并不是做出来就可以用的,还有很多限制条件。
性能是一个很基本的要求,很多时候甲方喜欢评比性能指标,常常把安全组件的性能overhead负载压得很低。实际上,大部分行业CPU的平均负载一般低于40%,大量CPU资源平时其实是闲置的。作为负责任的甲方,不应该过度要求极低的安全CPU负载。过低的安全CPU配额获得的闲置CPU收益,与恶性安全事件时系统被打穿后的风险相比完全不成比例。我们建议线上系统的安全CPU overhead比例控制在5%~10%以内,线下可视情况放宽。
其次是稳定保障,由于逻辑切入应用系统中去,所以要避免隐蔽死锁问题,同时控制资源不要过度使用,安全逻辑不要过度复杂等等,这里需要较长时间的测试和磨合。之前OpenRASP的工作表明关键部件的开源可以有效降低部署时的稳定性风险。
最后也是最关键的是安全保障,安全平行切面是一个横跨所有应用、所有基础设施的超级管控平面,攻击者获得切面的控制权就意味着对系统的彻底控制,所以安全平行切面自身的防御至关重要,不但要能有效防止潜在攻击者的控制,而且要防止敏感数据的泄漏。
实践的检验
蚂蚁集团在安全平行切面的实践从2019年开始,目前已经超过一年时间。在2020年双11已经在不少关键系统里全量部署安全切面,经受住了双11的考验。在资产感知、隐私管控、攻击感知与阻断等领域都获得了很好的实战效果。
这里我们重点分享在安全平行切面支撑下,漏洞攻防视角从N day到-1 day的改变。
· N day漏洞:是业界都已经知道的安全漏洞。对于攻防双方而言,是查全与捡漏的基本功考验;
· 1 day漏洞:是业界刚刚知道的安全漏洞,防守者需要紧急界定风险范围,并推动业务方和基础设施升级;攻击者则在加班加点写实战化的exploit,加速扫描。这个考验的是双方的安全能力;
· 0 day漏洞:攻击者知道但防守者不知道的高危漏洞。在这种场景下,防守者非常被动,强依赖于纵深防御体系,如履薄冰;
· -1 day漏洞:攻击者正在挖掘但尚未得手,防守者原来不知道,但由于有安全平行切面的内视能力,顺着攻击者的方向,利用更多的先验知识抢在攻击者前发现的漏洞。-1 day的价值不只是发现了原来不知道的漏洞,而是抢在攻击者前发现漏洞。捕获-1 day的能力使防守者重新获得主动权,大幅度降低甲方防守压力。
4 结语:构筑安全平行切面防御体系
安全平行切面,是由蚂蚁安全提出并积极实践的下一代金融级基础安全防御体系。在复杂安全风险场景下,安全平行切面防御体系将安全能力系统化地融入技术基础设施与应用服务内部,同时保持安全响应能力与复杂业务逻辑的解耦,以形成独立的安全切面。在推进业务高速演进的同时,可以独立、高效、精确地在应用内部直接检测和阻断各种复杂攻击,并支持业务/应用透视以完成全方位的安全治理工作。
安全平行切面就像程序里的平行空间,与业务逻辑交织在一起,又相互独立;切面防御贯穿整个程序,可以有效地管控整个程序,同时又不被业务研发周期所束缚。安全切面防御体系在准确性、效率、通用性等方面跨越了传统安全基础设施,已在蚂蚁多个云和端的重要技术基础设施上,超过100个场景下完成了研发和部署,每天可对千亿级的技术行为进行全程安全保护和管控。
我们的实践表明安全平行切面防御体系是一个非常有前景的下一代安全基础设施,能够有效缓解大型数字化业务面临的严峻安全挑战。而且在切面之上,可以诞生像-1 day攻防这样的新兴安全机制。我们将蚂蚁在安全平行切面上的建设和实践经验与大家分享,也希望和业界朋友们一起构建更完善的安全平行切面生态,保障数字化产业的顺利发展。
——《北向文集》由北向峰会与嘶吼安全产业研究院联合发布
《北向文集》由北向峰会与嘶吼安全产业研究院联合发布。如若转载,请注明原文地址