未来已来,只是不均衡地分布在当下
大家好,我是菜农,欢迎来到我的频道。
本文共 6471字,预计阅读 20 分钟
信任是一个很奢侈的东西,无论人与人,亦或是网络之间。在网络监控无处不在的时代,谁值得信任反而成为了最大的难题。那么既然无迹可寻,何不放弃信任,走向零信任?
在本篇中我们将掌握零信任的基本概念 与 技术构成。零信任是一种全新的安全架构,但其核心组件是基于身份与访问管理技术、终端设备环境风险评估技术、基于属性的访问控制模型、基于机器学习的身份分析技术等构建。字面上看来没什么值得激动人心的技术,但却步步引人深入,因此这篇权当入门,重在解决 "是什么" 的问题。
零信任也可称为 零信任网络、 零信任模型等,这个概念最早是由 Join Kinddervag 于 2010 年提出的,他当时是 Forrester 的分析师。Join Kinddervag 发现传统的基于边界的网络完全架构存在缺陷,通常被认为 可信 的内部网络充满了威胁,信任 被过度滥用。因此他创造出了零信任的概念,从不信任,始终在校验 便是零信任的核心思想。
在讲零信任之前,我们先从 VPN 进行过渡。在你的认知范围内什么是 VPN ?
通常来说,VPN 是作为企业远程办公的常用工具,我们常常深夜在家办公的时候,首先要做的便是连接上 VPN,只有当连接上 VPN 那一刻起,你才化身最朴实无华的打工人!
VPN 好用吗?好用。它为无数个打工人提供了在家办公的便捷,实现了无数人在家加班的 “追求”。当然,受益的不只是我们,VPN 对于黑客来说也十分好用,它为黑客突破层层边界防御提供了捷径。怎么理解?请看下图! 正常来说,我们要访问内部应用只有在内网的情况下才能正常进行,因为有个防火墙防护着外部流量
那 VPN 在其中就相当于是个后门通道
因此说有了这个通道,方便了员工,也方便了黑客。VPN更加注重加密传输和远程接入等方面,更适合于远程办公和跨地区访问等应用场景。虽然VPN可以对用户进行身份认证,但是其内部网络仍然是一个信任网络,可能会受到内部攻击。 无可厚非,VPN也并非如此不堪,它的特点也同样瞩目:
在传统的网络安全架构中是基于网络边界防护的。企业构建网络安全体系时,首先把网络划分为 外网、内网 和 DMZ区 等不同的安全区域,然后在网络边界上通过部署防火墙、WAF和IPS等网络安全技术手段进行重重防护。 那么这种架构的最大特点便是:认为内网比外网更安全,默认了对内网中的人、设备、系统和应用的所有信任,从而忽视对内网安全措施的加强,因此当黑客攻破内外网间的防护后,就如入无人之地,通过 回连 的方式,一步步试探最高权限的机器进行内部系统的攻破。
在美国 Verizon 公司的《2017年数据泄露调查报告》中便明确提出,造成企业数据泄露的原因主要有两个:一是外部攻击,二是内部威胁 。
在此之前,我们简单了解下传统安全网络架构(如防火墙、入侵检测系统等)存在的几个弊端:
零信任网络便是对网络安全架构进行了范式上的颠覆,引导安全体系架构 从网络中心化走向身份中心化
这是一个很重大的改变,零信任所依赖的身份认证与访问控制能力通常由身份与访问管理系统(IAM)提供,现代身份管理技术是零信任的技术根基,因此从技术上看,零信任本质上就是利用现代身份管理技术实现对人、设备、系统和应用的全面、动态、智能的访问控制。 零信任架构引导人们更加关注"保护面"而不是"攻击面
何为零信任?它是建立在以下5个基本假定之上:
控制平面
其中零信任架构的支撑系统称为控制平面。访问受保护资源的请求首先会经过控制平面处理,包括设备和用户的身份认证和授权。细粒度的控制策略也在这一层进行,控制平面可以基于组织中的角色、时间或设备类型进行授权。如果用户需要访问安全登记更高的资源,那么就需要执行更高强度的认证。 只有当控制平面完成检查,确认请求具备合法的授权,它就会动态配置数据平面,接收 来自该客户端(且仅限该客户端) 的访问流量。
数据平面的作用是转发网络流量,它需要高速处理数据包,因此其处理逻辑相对简单,通常使用专用硬件。控制平面可以看作是网络设备的大脑,系统管理员用它来配置管理网络设备,因此控制平面会随着策略的变化而变化。
控制平面能够影响数据平面的变化,这种机制非常重要。因为数据平面的系统通常是攻击者进入网络的入口,所以数据平面与控制平面之间的接口必须非常清晰,确保数据平面中的系统不会因为被攻陷而导致在网络内横向移动。数据平面和控制平面系统之间的交互请求必须使用私有PKI系统进行身份认证和加密,以确保接收方的可信度。控制平面和数据平面之间的接口应当类似于操作系统内核空间和用户空间之间的接口,为了防止提权攻击,两个系统之间的交互需要进行高度隔离。
既然零信任模型认为一切都是不可信的。那么该如何建立信任?因此信任管理就是零信任网络的一个重要功能。从不信任中建立信任,听起来是那么的矛盾
在某些情况下,人们甚至可能连自己都无法完全信任,但是至少可以确信所采取的行动的确是自己所为。因此,零信任网络中的信任往往源自于系统管理员。 如果一个公司是数十人的规模,那么每次访问搜权都经由系统管理员审批,这看起来并不是很繁琐。但如果用户剧增,成千上百人,乃至上万的体量,这个时候信任管理的工作量就会非常大,而系统管理员的角色岗位总会是那么几个,不会与之配比,那么再让系统管理员进行日常的权限信任多少有点胡来。 那么就由此出现了 **信任委托**。 (管理员信任某个特定的系统,这个系统又可以信任另一个系统,从而形成信任链)
信任委托 非常重要,借助信任委托,人们可以构建自动化系统,在无须人为干预的情况下,以安全可信的方式管理大规模增长的零信任网络。
返回给系统管理员的这一串信任通常被称为 信任链(Trust Chain) 系统管理员被称为 信任锚(Trust Anchor)
在设计安全架构中的第一步便是 定义威胁模型, 威胁模型是用来描述潜在的攻击者及其能力、资源以及意图攻击的目标。威胁模型通常会明确攻击者的范围,并按照攻击者的能力高低进行排序,以便于人们按照从易到难的顺序,合理部署相应的攻击缓解措施。 威胁模型 作为一种机制,可以帮助我们聚焦于某个具体的威胁,并仔细思考缓解该威胁的具体措施。
网络安全领域中有多种威胁建模的方法,以下这几种都是流行的建模工具
信任管理是网络安全管理中非常困难的工作。确定网络中的人员和设备应该如何搜权是相当耗费时间,并且人员和设备又在不断变化,这会直接影响网络的安全态势。
定义信任策略这项工作通常由安全工程师手工完成,系统管理员可以根据用户在组织中的职责为其分配相应的权限。但是这种基于角色的策略系统导致管理员不得不制造出许多信任池,从而削弱了网络的整体安全态势 因此信任池问题凸显了传统网络信任管理的根本性缺陷:安全策略动态性不足,无法应对日益变化的网络安全威胁。 因此这种信任管理需要是动态可变的,也就是 可变信任。 在零信任网络中,可变的信任是指在任何时刻,网络中的任何设备、用户或应用程序都不应被默认信任。相反,每个实体都必须经过身份验证和授权,以确定其是否有权访问特定资源或执行特定操作。这种信任是根据实时评估和监控不同实体的行为和活动而建立的,因此可以随时改变。
例如,如果一个用户的行为开始表现出异常或可疑的活动,他的信任级别可能会下降,从而限制他对资源的访问。因此,在零信任网络中,信任是基于行为和上下文评估的,而不是基于预设的信任级别或身份。
image.png
当然了,凡事没有绝对性,这种模式也不是没有缺点的。其中一个问题是,单一的评分值是否足以保护所有的敏感资源。用户的信任评分能够基于历史行为而降低,同样也可以基于历史的可信行为而增加。那么,攻击者是否有可能通过在系统中慢慢建立信任,从而获得更高的访问权限呢?
网络代理是指在网络请求中用于描述请求发起者的信息集合,一般包括用户、应用程序和设备这三类实体信息。在传统网络架构中,一般是对这些实体进行单独授权。但是在零信任网络中,策略是基于这3类实体信息的组合整体进行制定。用户、应用程序和设备信息是访问请求密不可分的上下文,将其作为整体进行授权,可以有效地应对凭证窃取等安全威胁。
网络代理属于授权范畴,它参与授权决策,不属于认证范畴,但认证的结果和状态会在网络代理的数据中有所体现。控制平面基于网络代理对访问请求进行授权,这些系统是零信任网络中授权的首要执行者。在某些场景中,要实现细粒度的授权,需要把网络代理的部分信息从控制平面传递给数据平面,本章也探讨了在暴露网络代理信息的时候如何保证数据的隐私安全。 代理可以作为一种安全网关,位于网络边界上,过滤和检查所有进出企业网络的流量。以下是零信任网络中使用网络代理的一些示例:
全篇都围绕着 授权 两个关键词,由此可知 搜权 是零信任网络中当仁不让的核心机制和流程。 零信任授权体系架构包括 4 个核心组件
- 策略执行组件
在逻辑上处于授权信息流的第一道关口,负责拦截访问请求并通过调用策略引擎完成授权决策。
策略执行组件有两大职责:
策略引擎是零信任授权模型中进行授权决策的组件,它接收来自策略执行组件的授权请求,并和预先制定好的策略进行比较,决定请求是否被允许,并将决策结果返回策略执行组件进行强制执行。 在策略引擎和策略执行组件之间继续进行进程级隔离还是必须的。 这边我们需要了解的是零信任模型和传统网络安全在策略上的差异点主要体现在用于定义策略的控制机制不同。 零信任策略不基于网络具体信息(如IP地址或网段),而是基于网络中的逻辑组件来执行策略,这些逻辑组件可能包括以下几种:
在零信任网络里,信任引擎是对特定的网络请求或活动进行风险分析的系统组件,其职责是对网络请求及活动的风险进行数值评估,策略引擎基于这个风险评估进行进一步的授权决策,以确定是否允许此次访问请求。 信任引擎通过分析请求者的身份,行为和上下文来评估安全风险。它使用多种技术,如身份验证,行为分析,威胁情报和上下文分析来进行评估。如果请求者的安全风险被评估为高,则信任引擎可以拒绝该请求或者对其进行限制。 信任引擎的目的是提高网络安全性,防止未经授权的访问和攻击,同时也不影响合法用户的网络使用。它是零信任网络安全策略的核心部分,并且是实现零信任网络的关键。
数据存储系统负责存储关键信息,如请求者的身份信息,行为信息,上下文信息等。主要功能包括:
零信任网络(Zero Trust Network)的核心概念包括:
当然了,本篇仅仅是为读者起个开头,继续往下深究的话我们可以了解如何建立用户信任、如何建立应用信任以及如何建立流量信任等,这些都是值得探索的。零信任网络名词很新,不过核心技术却是日常经常接触的。 以上便是本篇的所有内容,如果觉得对你有帮助的小伙伴不妨点个关注做个伴,便是对小菜最大的支持。不要空谈,不要贪懒,和小菜一起做个吹着牛X做架构的程序猿吧~ 咱们下文再见!
今天的你多努力一点,明天的你就能少说一句求人的话! 我是小菜,一个和你一起变强的男人。 微信公众号已开启,菜农曰,没关注的同学们记得关注哦!
页面更新:2024-04-15
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号