零信任安全架构下的数字资产保护 – 作者:Baishancloud白山云科技

cd14a7318b9db59f1e919162144ec18.png

数字安全是企业高质量发展的关键。根据Gartner 2018年安全报告,数据安全、应用(业务)安全、网络安全是CIO/CSO最关注的安全子项Top3,数字资产保护已成为CIO/CSO对安全的最大需求。

 

数据资产蕴含着巨大价值,而在商业对手、黑产/暗网、数据公司等通过非法爬取、黑客窃取等手段获取数据时,内部的主动泄露、被动泄露等方式也使数据资产安全受到威胁。

 

而目前针对数字资产的保护,安全手段仍有一定局限:

·        传统安全技术无视“爬虫”,但爬虫其实是造成数据资产泄露的主要途径;

·        大多企业应用点防御,缺少对数字资产的梳理,和基于流量/数据的纵深防御;

·        依赖规则,维护成本高,且覆盖不全,只能解决已知威胁;

·        安全产品使用不当,反而带来安全威胁。

 

针对以上问题,著名研究机构Forrester的首席分析师约翰·金德维格在2010年提出ZERO TRUST(零信任安全),期望能全面解决在企业安全中“人-物-数据”之间的问题。

 

“零信任”的本质

在我看来,认清身份,并对身份进行持续行为分析,再根据结果,实现对身份的动态控制。三者之间形成的闭循环,就是零信任架构。

1c1e4bc648a2263667e2dadf0a2566e.png

<零信任安全架构>


身份

身份,在现实生活中,我们有对应的独立肉体身份;而在数字化系统中,我们则对应一个个Token,即代表身份信息的字符串。Token具有唯一性、随机性、溯源性、持续性。

e936edc8d6beb5001d3d49c4a46dfe9.png<身份的三层映射关系>

上图阐释了身份的三层映射关系:每个人,即User Entity,都会映射到不同的Token;Token在IT系统中,又会映射不同的身份;不同身份具有不同的权限。

三层映射关系结合起来,就是零信任中的“身份”。即“身份”不仅包含了你个人的实体,也包含了你的***,以及不同作用域下的身份角色(比如你在家里是父亲,在公司是工程师)。

 

常见的Token有两种:

l  源IP

在大部分情况下,我们认为一个IP代表一个Token。但这可能存在一定问题:

1)代理池IP,net,可能一个IP背后不仅一个Token。也许在IPv6普及之后,这个问题会被彻底解决;

2)IP存在伪造的可能,这种情况下,需要一些额外的技巧防止IP伪造

l  ID

很多企业有自己的ID,可以是SSO账号,也可以是业务系统中的UID或设备指纹。 

持续行为分析

 

有了身份,在相应权限下,用户会产生不同行为。而零信任安全非常重要一点的就是对用户行为进行持续分析。

 

首先,我们需要定义什么是“行为”?

 

白山ATD系统以用户访问行为为视角,基于六元组模型,定义“行为”概念,即:时间、地点、人/ID、作用域、动作和结果。

 

其次,我们需要理解什么是“持续”?

 

即用户登录系统到登出系统:从用户访问某一边缘到另一边缘的整个过程;我们应该从纵向(用户生命周期)、横向(用户活动范围)两个维度进行分析。

 

我们总结常见的“行为分析”,目前大概可以分为两类,白山ATD系统针对不同情况采取了不同分析模型。:

 

l  针对特定场景的行为分析

针对特定场景,我们可以采用可编程对抗,把特定场景的规则植入到系统中;也可以利用有监督学习模型,利用企业已经标注好的黑白样本,针对场景训练模型。

 

l  针对通用场景的行为分析

针对通用场景,一般可以利用无监督学习,进行单体分析和个群分析。

 

单体分析:即和过去的自己对比。比如我们学习某一工程师过去的登录行为,生成行为规律,如果某一天的行为不符合规律,系统会质疑其身份,判断是否存在问题。

 

个群分析:即和大家比。其关键点在于如何屏蔽海量数据的噪声,进行群体行为的建模;再从时域、频域、文本、路径等维度分析,找出与大家不同的行为。

9a927154f246cf1921e7efa0bbfe7d4.png<频域个群对比-某游戏平台>

在某游戏公司的实际案例中,攻击者使用伪造User Agent不断更换User ID进行撞库,并破解签名算法。从流量角度分析日志,其访问行为是合法请求,且访问频率不高。但当我们通过傅立叶变换转变成频率行为,我们可以看到其访问行为具有周期性,通过频域个群对比,最终确认是撞库攻击。

e642e158925baf475ca1d4d471df749.png<文本个群对比-某银行HW>

在某银行HW攻防案例中,用户请求其实是PHP的探测,通过模拟百度搜索请求,绕过安全设备扫描。但是因为字符串中,标点符号之间的比例、单引号双引号之前的依赖关系、参数的构成,与正常的用户请求之间存在明显区别,通过文本个群对比,最终被ATD系统捕捉。 

动态控制-零信任安全的核心

5b9e481784dabd97a8eec6d787209c7.png<动态控制>

控制是根据身份对应的权限,约束身份的行为。动态控制则是通过不断地行为分析,修正Token的身份,调整对应权限。

923dcbc30f8ac0e6993125c3f73f917.png

<权限粒度>

动态控制还需要对数字资产划分权限粒度,通过建立动作分级和资产粒度的二维象限,对身份授权。

动作上,可感、可达、读、增、改、删,每一个动作所要求的权限是逐级上升;而资产粒度上,服务、库、表、行、列,每一个访问资产的精细度也逐级递增。而动作分级与资产粒度的象限交点,即为对特定用户身份的授权。

bc6f0841a0aaef98d7ddde94ecd7e89.png<零信任&信用体系>

总之,企业搭建一个外部用户与内部用户的信用体系,应是组织结构、业务逻辑、风控系统、威胁情报、行为分析等所有能参考的数据**。在这样的体系中,能给每个身份信用定级,并能不断地更新信用、调整身份。体系的搭建需要融入企业整个生命周期。这样的实时动态的信用体系,就是零信任安全体系。

零信任不是表示不相信任何人,而是要从行为中重塑对每一个人的信任。


白山官网:www.baishan.com,欢迎咨询

来源:freebuf.com 2020-03-18 11:29:16 by: Baishancloud白山云科技

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论