之前也写过几篇关于数据安全的文章,有兴趣的可以翻下之前的博客。本文整理了一份脑图,不过不会详细介绍数据分类分级,也不会去讲全站TLS之类的安全项目,以及KMS、PKI等如何建设。更多的是关注在整体的联系。
整体来说是通过一些政策/规范去支撑技术实现,然后通过定期的安全教育和审计检查实际运营的状况。安全教育和企业安全文化看起来很虚,实际上在基础建设到一定程度之后就显得很重要。因为意识往往在第一防线,甚至超过了工具。脑袋里要保持什么数据可以传输到什么地方,什么数据不可以在什么地方保存。永远保持对外部输入信息的警惕。
数据分类分级是进行数据治理(数据治理是个话题复杂且实践更复杂的东西)的第一步,当然考虑到不同的业务、产品、基础设施。不同企业推进的方式也不一样,可能落在数据团队上,也可能是风控团队,也可能是内控团队,或者共同协作(数据治理的标准方式,不过注意要在最初就区分开不同团队的职责)。实际来说,安全团队推动分类分级的落地成本要远比想象的高,而输出分类分级政策可能是较为合适。通过对不同级别数据在整个生命周期里的约束,来保障数据安全。但常用的保障技术又绝非仅仅数据安全技术。实际在架构设计中,除了加密,令牌化,脱敏之外还需要考虑身份认证及授权,网络访问控制,日志监控和审计。换句话说,需要作用在基础设施的安全控制之上。只有划分好了不同等级的安全域,建立了网络隔离之后,才能把对应等级的数据放到对应的区域中去。受限访问的PCI存储和控制区域和非受限的PCI存储和控制的访问也是不同的。至于到对应区域内,应用服务和管理后台又是不同的访问方式,身份认证的要求,传输的要求等等。另外针对客户的端上数据存储也需要有对应规范。
下面简单的看一下办公网和生产网整体的数据安全架构设计。
本来是想展示原有架构怎么过渡到目标架构的。但后来一想实际情况各家又不一样,不如简单挑一下几个关键点说一说。
相对于办公网而言,生产网的数据结构良好,模式固定。生产网的数据安全治理远比办公网要轻松的多。
这里ServeMesh内部细分的话还有一张单独的架构图,暂时不讲。另外除了数据保护平台之外,还需要数据扫描平台,数据字典,元数据查询等工具。
之所以把这一块单独拎出来,是因为数据安全的事件运营其实是可以合并到SOC中去的,并做到Data-Driven。这里隐去了一部分细节,着重关注下SOC的Workflow。数据安全事件的检测和处置也只是其中一种,原理类似。
采购或自研的系统或者产品完成标准化的系统能力之后,通过对不同场景的运营并针对具体工具形成SOP,并由此切入自动化运营,而具体playbook的执行又是作用于相应的系统之上。在这个过程中,完成了运营的第一阶段,而数据驱动就是以此为基础,将各种数据汇集处理之后进行检测等等,以此产生新的告警和事件,并触发相应的SOP。而针对整个运营质量,则以可视化看板为主。告警的误报率,部署的覆盖率,平均响应的时间,场景的触发等等。
还是要吐槽一下,搞运营不是搞话术,东扯西拉的。水平不够就要学,不能瞎逼逼。另一方面,没有经验的Leader也无法有效识别输出的质量。
还有一个老生常谈的话题,就是运营-技术-管理,做一件事,尤其是运营(运营去处置,架构去设计等等)一定需要体现政策,流程,工具的结合作用。要有政策支持,标准化的流程,以及平台或工具实现。无论是架构设计还是安全咨询等等,最后都要进入常态化运营阶段的。野路子另说,野路子太野了。举例来说,没有Policy约束的话,日志应该跨云怎么办,能不能跨?
另外时常看到有人无法区分政策规范流程的,这里我简单画了个图
另外定Policy的时候需要考虑到是为了落地适应现状,还是说为了引导现状的改变。如果只是为了适应现状,具备某个Policy,以便通过某些检测。那就变成了,我已经有了某些合乎标准/或不合乎标准的东西存在,然后把这些东西放在文档里。检测的时候我们有了这个Policy,只是政策的颗粒度不够细,所以“后面会修改”。当然更多的时候可能只是你有这个Policy就行了,内容甚至都没有人看。另一种是,通过Policy支撑技术约束落地,即便现有的基础设施或者应用不符合,后续也会向这个方向过渡。这是很重要的两种区别,前者并非毫无意义,但这种阶段性的折腾往往不能改变什么现状。(在过检前补写过各种SOP和Policy的人应该理解我的意思。)
从过去一年里精选里一些数据安全相关的架构设计案例。出于篇幅原因不能每个都展开和分析,仅作分享。你能想到哪些细节?
通过以上可以看到在这些控制措施中并非仅仅只关注数据安全的技术手段,还会考虑到安全培训,日志监控等等。另外考虑到数据生命周期,还需要把相关技术应用到不同阶段。以及针对技术的bypass,例如针对文件的删除,是wipe,purge还是destroy?曾有人认为使用Serverless即可避免应用层之外的漏洞,类似的有了MFA就能避免权限问题,密码复杂度达到一定程度就是足够安全的。但有时候我们是不是想的太简单了?
企业内的IT基本环境可区分为 IDC(On-Prem) , Cloud(Serverless, IAAS,PAAS,SAAS), SAAS。从IDC到Cloud到SAAS过程中,Self-Managed的东西越来越少(可以查看这张图 )。换个视角说可能有更多的精力/资源投入对Data的控制中。但实际情况却是恰恰相反。在IAAS到SAAS的过程中,企业对自己数据的管理手段越来越少,即便SAAS服务提供商受GDPR约束,也无法提供完整的数据管理功能给到客户。因为厂商在提供SAAS服务的过程中,对用户来说虽然是屏蔽了底层的控制行为,但实际的数据还是存储在Data Center。那么如果需要开放这部分能力给到客户,就会带来很高的成本。作为甲方,更希望能够获取对数据的完整控制能力,而不是仅仅关注数据防泄漏上。只有获取了完整的控制能力,才能处理数据流动所产生的相关问题。我看到大部分的文章,一谈数据安全,就是分类分级,生命周期管理,数据防泄漏三大块话题。至于密钥加密,架构设计,日志监控等,则在数据安全中提到的很少,且不能因为云化过程基础设施被屏蔽而忽视基础设施的重要性。
有兴趣的同学可以阅读下之前写的关于数据安全的一些文章。