在上一篇《你永远也混不熟的零信任》文章中,我们介绍了重点介绍了零信任的原则和理念,这篇文章我们具体来看看零信任的架构、关键技术,以及企业如何部署零信任。
一、零信任总体架构
首先,我们来看看零信任架构的总体框架:
上图是一个简略的零信任架构总体框架图,在图的左边是发起访问的主体,右边是访问的目标资源,访问主体通过控制平面发起访问请求,由信任评估引擎、访问控制引擎实施身份认证和授权,访问请求获得允许后,访问代理作为执行点,接受访问主体的流量数据,建立一次性的安全访问连接。
在整个过程中,信任评估引擎将持续地进行信任评估,访问控制引擎通过持续的评估数据,动态地判断访问控制策略是否需要改变,一旦发现问题,就可以及时通过访问代理中断连接,防止其做横向移动和恶意提权,快速实施对资源的保护。
图中的身份安全基础设施可以为访问控制提供基础的数据来源,以便对人/设备/系统进行身份管理和权限管理,典型的身份安全基础设施包括:PKI系统、身份管理系统、数据访问策略等。
其它安全分析平台为持续的动态评估提供大量的日志信息,包括资产状态、规范性要求、运行环境安全风险、威胁情报等数据。典型的其他安全分析平台包括有:终端防护与响应系统、安全态势感知分析系统、行业合规系统、威胁情报源、安全信息和事件管理系统等。
二、零信任关键技术“SIM”
1. SDP(软件定义边界)
SDP技术是通过软件的方式,在“移动+云”的背景下构建起虚拟边界,利用基于身份的访问控制及完备的权限认证机制,提供有效的隐身保护。
SDP的基本原则之一就是信息隐身,它会隐藏服务器地址、端口,使攻击者无法获取攻击目标。另外,SDP在连接服务器之前,会进行预认证和预授权,先认证用户和设备的合法性,接着,用户只能看到被授权访问的应用。并且,用户只有应用层的访问权限,无网络级的准入。SDP还具有扩展性,基于标准协议,可以方便与其他安全系统集成。
2. IAM(增强的身份管理)
全面身份化是零信任架构的基石,零信任所需的IAM技术通过围绕身份、权限、环境等信息进行有效管控与治理,从而保证正确的身份在正确的访问环境下,基于正当理由访问正确的资源。随着数字化转型的不断深入,业务的云化、终端的激增均使得企业IT环境变得更加复杂,传统静态且封闭的身份与访问管理机制已不能适应这种变化,因此零信任中的IAM将更加敏捷、灵活且智能,需要适应各种新兴的业务场景,能够采用动态的策略实现自主完善,可以不断调整以满足实际的安全需求。
3. MSG(微隔离)
传统防护模式通常采用防火墙作为内外部流量的安全防护手段,一旦攻击者突破防护边界,缺少有效的安全控制手段用来阻止横向流量之间的随意访问。这也就是黑客入侵后能在内部进行横向移动的重要原因。
随着东西向流量占比越来越大,微隔离技术应运而生,其作为一种网络安全技术,重点用于阻止攻击者在进入企业数据中心网络内部后的横向移动访问。微隔离通过细粒度的策略控制,可以灵活地实现业务系统内外部主机与主机的隔离,让东西向流量可视可控,从而更加有效地防御黑客或病毒持续性大面积的渗透和破坏。当前微隔离方案主要有三种技术路线,分别是云原生微隔离、API对接微隔离以及主机代理微隔离,其中主机代理微隔离更加适应新兴技术不断更迭及应用带来的多变的用户业务环境。
三、企业如何开始零信任?
现在的企业网络架构有云计算,虚拟化,移动互联,工业互联网......网络情况非常复杂,那构建零信任架构应该如何开始呢?
1. 明确现状和目标
在决定采用零信任架构之前,企业最好思考以下问题:
- 公司为什么要采用零信任安全模型?
- 采用零信任架构会不会干扰目前组织的工作?
- 企业曾经遭受过网络攻击吗?如果有,那企业犯了什么错误?存在什么问题?
- 员工知道这个安全概念吗?员工准备好了吗?
- 你打算如何做这个计划?
对以上问题的思考有助于明确企业的现实需求,进而明确企业的战略目标。因为零信任架构是一种理念和战略,是一个长期的目标,企业无法一蹴而就,但是可以部分实现零信任,采用混合架构,所以,如何根据现实情况逐步对企业进行优化调整才是最重要的。
2. 映射用户需求和资源对象
来源:微软
企业应该对数据的流动非常清楚,比如人员在访问什么数据?人员的身份是什么?他在什么地方?等等。上图是微软的按条件、动态风险评估的零信任部署模型,通过该模型梳理企业的人员、设备、资源等情况会更加清晰、系统。
在用户层面:
- 首先,要明确用户是谁?他们需要访问什么应用、服务或数据?他们如何访问?在哪里访问?
- 其次,用户需要满足什么条件/属性/状态?才能被允许访问或部分访问?
- 然后,对于上述条件,我们如何通过特定的安全控制措施满足这些条件?
- 最后,如何确保我们的安全控制措施是有效的?也就是说如何做好安全监控?
在目标层面:
从目标资源的角度看,同样也是思考几个问题:
- 谁访问数据?他们的身份是什么?他们如何访问?
- 用户账户的安全风险如何?(例如使用弱密码/泄露的密码、低密码强度、使用行为等)
- 设备类型是什么?设备健康状态/安全状态如何?它在访问什么数据?
- 数据重要性/机密性/敏感性如何?
- 用户所在位置如何?当前登录位置?历史登录行为?
- 访问的目标应用是什么?SaaS、云端应用、企业本地部署应用、还是移动App?
在决策层面:
通过对用户层面和目标层面一步一步地梳理和映射之后,基于动态评估结果,对应的安全强制措施可以是:允许或拒绝访问、要求多因素身份验证、强制重置用户密码、限制访问特定应用/特定功能(例如禁止下载文件等)等。
3. 使用微分段
在企业网络中,不应该只有一个大管道进出其中。在零信任方法中,组织应在网络系统中的各个位置放置微边界,将网络分成小岛,其中包含特定的工作负载。每个“小岛”都有自己的入口和出口控件。这样可以增加入侵者在整个网络中渗透的难度,从而减少横向移动的威胁。
至于应该怎样分割网络,这里没有标准的模型,需要企业根据自身情况设计。
4. 自动化和编排
对组织的人员、设备、资源的关系进行梳理和映射之后,我们将网络进行微隔离,现在,我们需要做的就是在微边界或者每个端点上都进行自动化和编排,将重复和繁琐的安全任务转换为自动执行、计划执行或事件驱动的自定义工作流。这样可以释放大量的工作人员时间,并减少人为出错的机会。
5. 实施适应性风险政策
一切都安排妥当后,还有一个因素需要考虑,就是人员的权限也是会变化的,比如说在某个项目组内的成员可以获得特定的权限,但是项目结束或人员离职后,需要及时的取消其权限。风险政策需要适应动态变化的实际情况,并根据需要相应地更改权限。
四、总结
总结一下,企业构建零信任首先需要开展系统全面地资产梳理、业务安全分析,深入研究零信任在企业部署实施的必要性和适应性、部署场景和方案可行性、与现有安全保障框架的兼容性,在保障网络和业务安全稳定运行前提下,分阶段、循序渐进推动系统迁移,完善网络安全保障体系,建立自适应的安全防御能力。
当然,每个企业的IT能力、技术路线、实际需求,以及对安全的认知都不一样,所以说,没有完全一致的零信任部署计划,以上步骤也仅供参考。当然,无论企业最终是否采用零信任,我们仍然可以从中提取到有用的建议,例如身份验证凭据的保护、安全数据和状态的可视化等等。