从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村

admin 2023年6月30日00:04:03评论27 views字数 4311阅读14分22秒阅读模式

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村


从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村


如果你被标题中的“第一性原理”吸引进来,那笔者的“诡计”算是得逞了。回想一下我们日常分析问题的方式,大致可以分为两种:一种是归纳总结,比如“五家头部银行是这么做的,所以我也这么做”;一种是逻辑推理,从事务的本源出发,思考应该如何做。所谓“第一性原理”,就是一种从事务本质分析问题的思维。

读研的时候,一次论文阅读分享会,导师问大家“信息安全的本质是什么?”,大家有说漏洞、攻防对抗,也有说风险的,莫衷一是。最后导师说昨晚看了吴翰清的《白帽子讲Web安全》,里面提出“安全的本质是信任,对此大家怎么看?”当时笔者对这个答案并不完全认同,后面十来年,一直反复品味“安全的本质是信任”这句话,发现没有比这更好的答案。在甲方企业,信息安全工作往往分为体系管理、攻防建设和安全运营,往细了拆,又可以分出审计、红蓝对抗、纵深防御、数据安全、监控告警与运营等等。拆的越细,在对上汇报时,满脸困惑的领导越容易问出那句灵魂拷问—“投入这么多,我们安全了吗?”而你只能回答“没有绝对的安全”,内心多少有些无力。这种无力感,其实从本质就注定了—没有绝对的信任,无非是背叛的代价够不够,何况信任也是会随着时间变化的。

类似的,我也一直在思考架构、开发、运维、测试、中台、管理、金融业务的本质都是什么?有些有答案,例如中台的本质是“从抽象和统一中创造价值”,金融的本质是“杠杆”,管理的本质是“激发人的善意和潜能”,而有些却没有答案。扯远了,介绍完“第一性原理”,咱们说回信息安全。

1、谈云原生安全的三种方式



如果拿“云原生安全”作为搜索关键词,大抵会得到两类文章。

第一类是从攻防视角出发,本着“未知攻,焉知防”的理念,给出一份云原生漏洞清单。再进一步的,大厂会给出诸如“云安全攻防矩阵”,或者“云原生安全全景图”,将问题按照类似纵深防御的方式,分为基础设施安全、基础架构安全(含供应链安全)、云原生应用安全、云原生安全运维等大类,再逐层进行枚举。

第二类是从定义出发,溯源到云原生定义。由于云原生概念一直在演变,目前业界主要有两个流派:一个是Pivotal公司提出的四要素,DevOps、持续交付、微服务和容器;另一个是CNCF(云原生计算基金会)提出的五要素,微服务、容器、不可变基础设施、声明式API和服务网格。后者目前接受程度更高,如果以此为准,那对于从传统基础设施阶段过渡而来的企业,其云原生安全建设重点就应该围绕这五要素展开,如图1所示,大致会可以分为基础安全、K8S/容器安全、云原生应用安全、云原生研发安全(DevSecOps)。

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 1 基于CNCF定义的云原生安全范畴

第二类还有个分支,抛开云原生的定义,对“云原生安全”的定义另起炉灶。比如某白皮书里面写到“云原生安全作为一种新兴的安全理念,并不是只解决云原生技术带来的安全问题,而是强调以原生的思维构建云安全,推动安全与云计算深度融合”。显然这种定义是在偷换概念,不如直接去掉“云”,用“原生安全”更贴切。采用这种方式的,大部分是厂家、咨询机构,不过也能理解,位置决定思维,只有换个更大的概念才好讲商业故事。

这两类文章都很好,不过局限在了“围绕技术谈技术”。为此,我想引入第三类视角,从业务切入,先回答“为什么需要云原生?”,再以信任为信息安全的“第一性原理”,分析“在云原生时代,哪些信任主体发生了变化?”,进而阐述云原生安全建设的范畴。


2、业务视角下的云原生



互联网的业务、组织架构变动频繁,在适应新环境的过程中,我总结出了“做事三问”:要不要做?何时做?谁来做?套在云原生这件事情上面,我尝试结合图2来回答。

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 2 战略、业务与技术的关系

第一个问题,要不要做?看战略,战略决定业务,IT支撑业务。比如某银行愿景是“国际领先的科技型个人金融生活服务集团”,策略是“金融+科技”,那么使用前沿技术,实现技术引领就是符合战略的。如何度量呢?简单的办法就是在行业率先使用某某技术(如上云、AI客服、隐私计算),实现技术创新,降本增效。

第二个问题,何时做?需要结合具体的业务战略规划,寻找到合适的业务场景。这里的“合适”,要求业务场景本身兼具商业价值和技术价值,且业务方有合作意愿。比如要体现云原生HPA的特性,就应该找业务存在阶段性波峰波谷的业务,在类似双十一这样的场景中一炮而红,而不是出于稳妥考虑,找个边缘业务,效果不痛不痒。最后还需要具备一定的人才、文化和技术储备,这点需要前期的铺垫。

第三个问题,谁来做?以闭环效率最高者为评判标准。过程中要注意几点:首先要提前决策,哪些要自研,哪些必须外购;其次如果自研,要站在整个IT团队的角度,将架构、开发、运维、测试、安全等角色纳入通盘考虑;再者,由于云平台本身基本来自外购,需要界定清楚哪些是云平台的责任,哪些是运营方的责任。最后是计算资源的投入周期,以及度量方式。

三个问题对应三个阶段,对于信息安全团队而言,如果到了阶段三才介入,往往只能成为执行角色,必然会比较被动。最好能在阶段一参与战略讨论,如果层级不够,也要争取在阶段二参与业务试点,提前储备资源积累口碑,才能化被动为主动。


3、IT视角下的云原生



假定此时试点业务已经选好,那站在IT人员的角度,云原生到底改变了什么?是业务模式、架构方案、还是开发模式?最终要解决的是质量、效率、还是成本问题?
不妨以云原生时代讨论最多的DevOps来切入分析。安全圈日常交流DevOps时,大部分采用的是Gartner提出的DevSecOps环(简称8字环),在环外标识出安全团队的所有流程、工具和平台,如图3是某证券公司的示例。

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 3 某证券公司DevSecOps示例

而站在架构、开发、测试和运维的视角,DevOps则是一种完全不同的画法,如图4所示。读者可以仔细对比图3和图4,从整个IT活动来思考,看看两者该如何融合,才能实现流水线、工具调用自动化。结果可能会让人失望,并没有图片中那么理想,大部分的安全措施都无法融入流水线,或者与DevOps并没有太大关系。

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 4 云原生场景下的典型IT活动全景图

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 5 DevOps活动按照角色进行分类

在图3的基础上,将各个活动按照角色进行覆盖得到图5,各角色的分工描述如下:
  1. 架构师和研发PM:拿到业务需求,设计架构方案,开展需求拆分和评审,研发PM进行任务拆解,制定排期。
  2. 研发(1):从敏捷项目管理系统拿到需求描述,在本地开发测试环境完成模块开发,触发开发流水线,完成P0用例自测,流水线调用SCA、SAST等工具进行安全检查,通过后准备提测。
  3. 测试:接到提测需求,且通过准入门禁,触发提测流水线,开始在集成测试环境进行多种测试(系统测试、UI测试、兼容性测试、安全测试等),期间发现Bug会录入缺陷管理,等待研发修复,再重复前述工作达到准出标准后,触发合流流水线。
  4. 研发(2):合流流水线会在集成测试环境全自动执行,通过回归测试、CR之后,完成代码合入,随后触发发布流水线。
  5. 运维:发布流水线将制品发布到测试区,运维人员创建发布单,采用灰度方式进行发布。同时还要做回归测试验证线上环境运行正常。

从这段描述来看,可以总结出几个关键点:①需求管理;②流水线建设(开发、提测、合流、发布流水线);③环境治理(开发测试、测试环境、预发布环境等);④测试用例管理;⑤发布模式(蓝绿、金丝雀等)。这些关键点,哪个是云原生出现后才独有的?没有。为何没有呢?

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 6 软件开发的三个时代

本质原因就藏在图6。从左往右,可以视为软件开发的三个时代。微服务是架构的升级,容器是运行环境的升级,DevOps是研发模式的升级,持续交付是发布模式的升级。而只有微服务、容器,才属于云原生之后新引入的。

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 7 云原生安全新引入的工作

因此,在讨论和开展云原生安全建设的时候,建议聚焦于图7中间高亮部分,将有限资源投入到新引入风险的防范中,同时抓大放小,抓一头一尾,从而避免陷入80%精力投入到20%收益的怪圈中。


4、云原生安全范畴



经过前文的分析,现在已经将云原生安全的范畴缩小到了图7中容器、K8S和云原生应用安全。展开来说,容器代表了运行时基础设施,K8S代表了容器编排平台,云原生应用安全的核心是微服务、服务网格和Serverless。以这些技术为纵轴,以软件生命周期(CI+CD+CO)为横轴,就能绘制出一个二维矩阵。

就在笔者脑补这个矩阵的时候,突然看到了CSA的《云原生安全技术规范》,里面的“云原生安全体系框架”(图8)近乎完美囊括了笔者的想法,该框架以开发运营为横轴,将软件生命周期细分为需求、设计、编码、测试、集成、交付、防护、检测和响应共九个阶段,纵轴按照云原生技术和系统划分为五个部分,框架中不仅列出了云原生各层的安全要求,还引入了DevSecOps和通用技术能力,并以不同颜色进行区分,一图囊括五个维度,不禁击节叫好。

从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村
图 8 云原生安全体系框架


5、总结



写此文是有感于目前的一种怪现象,很多场合出于商业目的,把云原生安全当个框,所有安全相关的东西都往里面装,恍惚中有种“云原生安全=原生安全=网络安全”的错觉。这种炒概念的做法,往往会让一些甲方安全人员望而却步,或者迷失方向抓不住重点。

某种程度上,云原生安全最大的挑战,其实是架构的升级,带来了整个知识体系的重构。甲方安全人员,尤其是从单体架构、瀑布开发模式时期过来的从业者,需要在知识储备上进行更多投入,来减少内心对未知的恐惧。

最后说明一点,本文并未对具体的技术细节进行深入探讨,有兴趣的读者,推荐进一步阅读《Docker容器安全最佳实践白皮书》(CIS)、《云原生安全技术规范》(CSA)等材料。



作者介绍

郭威:原深交所网络安全主管,现腾讯业务安全部门技术运营负责人。先甲方后乙方,以及先基础安全后业务安全的“奇葩”经历,天然让我以观察者的视角,时刻带着问题在产业界寻找答案,偶有所得,亦会分享在个人维护的公众号“secops 急行军”,欢迎关注。



关于 大湾区金融安全专刊


大湾区专刊集合了全国数十家金融和科技机构的网络安全工作经验总结,内容涉及防护体系、资产管理、研发安全、攻防演练、安全运营、数据安全、业务安全七大主题方向,希望能为从业者提供网络安全防护方面的整体思路,向行业传播可持续金融创新和实践经验,为推动可持续金融生态发展汇聚智慧与力量。

关于 安全村


安全村始终致力于为安全人服务,通过博客、文集、专刊、沙龙等形态,交流最新的技术和资讯,增强互动与合作,与行业人员共同建设协同生态。



从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村

专刊获取方式


本次专刊的合作机构如下
赶紧关注他们
联系获取纸质版专刊吧!


从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村




原文始发于微信公众号(SecUN安全村):从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月30日00:04:03
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   从第一性原理看云原生安全的范畴|大湾区金融安全专刊·安全村http://cn-sec.com/archives/1842638.html

发表评论

匿名网友 填写信息