用三种安全思维重新审视零信任网络

news/2024/12/29 8:33:30/

前言

迄今为止,绝大多数企业都还是以防火墙为基础划分出企业内网和公众网络的边界,并基于此构建安全体系。出差员工或者分支机构通过VPN接入企业内网。Google公司在2011年之前也是如此。正是2009年的APT攻击“极光行动”推动Google重新搭建整体安全架构,从而诞生了BeyondCorp项目。

美创安全实验室将通过本篇文章也是零信任技术系列第三篇文章带大家了解一下如何通过我们所熟知的安全思维来看待零信任网络的落地过程,进而我们重新探讨一下零信任网络架构模型。

零信任网络主要解决的场景

① 在不需要VPN或DMZ的情况下向生态合作伙伴(例如分销渠道,供应商,承包商或零售店)开放应用程序和服务。访问与应用程序和服务紧密相连。

② ZTNA消除了在公司网络内外访问企业应用的区别,让用户体验标准化。

③ 在运营商或云厂商不受信任的情况下,将加密一直进行到端点。

④ 为IT承包商和远程或移动办公的员工提供特定应用的访问,这可以替代基于VPN的访问。

⑤ 在企业并购期间将访问权限扩展到收购组织,无需配置站点到站点的VPN和防火墙规则。

⑥ 通过对强身份认证和端点保护来减少或消除潜在危险区域访问的风险,以允许该危险区域的用户与应用程序和数据进行交互。

⑦ 在网络或云中隔离高价值的企业应用程序,减少来自内部的威胁并使管理访问权限分离。

⑧ 在个人设备上对用户进行身份验证-通过降低全面管理要求和允许更安全的应用直接访问,ZTNA可以提高安全性并简化BYOD的程序

⑨ 在IoT(物联网)网段上创建安全的物联网设备或基于虚拟设备的连接器。

⑩ 可以将系统在不安全网络中隐藏,例如:因协作需求而要向公网开放的系统。

三种安全思维模型

思维模型一:C I A Triad原则

我们先来看一个比较简单的思维模型,CIA Triad原则就是一切的攻防手段都是围绕着保密性(C)、完整性(I)、可用性(A)三原则展开的。

保密性:【保密性实际上是它的本质就是信息越界】这个边界实际上是有两类:一:时间边界;二:空间边界。时间边界就是说还没到那个时间点,他提前给放出来。比方说我们说高考试卷,每年的高考语文试卷不到6月7号上午9点,九点之前你弄出来了,这就是一个重大的泄密。再说空间边界,这个信息从你的内网跑到外网去了,从本来是只能张三李四知道是变成了王五知道。这就是一个跨越了空间的边界,信息它跨越了非授权、非受控的空间边界,它就是一种信息的泄密,保密性遭受破坏。

完整性:【完整性是指信息的它原本的状态,系统的原本的结构和组成】如果说这信息它原本的状态发生了变化,它比方说从1变成了2,它的组成是从无到有或是结构要素的位置发生了变化、或比例发生了变化,这导致了完整性遭受破坏。

可用性:这一点比较好理解,就是【我需要的时候,这个系统或信息能够去在合理的时间之内获得,就是可用性】这就是所谓的我们说的CIA这个模型上,CIA定义的有DAD模型,所有的这些工坊都是围绕CIA展开的,后面我会我们会看到CIA是怎么来运用。

思维模型二:访问控制模型

下面我们再来看这个访问控制模型,就是一切的控制手段,都是围绕主体、客体、信息流三个要素展开。

证信息(比如密码):这个模型当中,发起访问的一方就是访问主体,被访问的那方就叫做客体。整个访问就会产生信息流。在任何一个访问控制系统中,都包含以下四个行为:

身份标示:访问主体在一个确定边界的系统范围被给予唯一的标示,解决你是谁的问题;

身份验证:对访问主体需要做基本的身份验证,解决你宣称就是谁的问题。

授权:用户身份验证通过后,需要确定用户可以访问哪些资源,以及对资源进行怎样的操作(读、写、删除等)。解决用户能做什么的问题。

审计:对用户的访问行为都记录在案,以备事后追责或改进系统。

非常复杂的访问控制系统都是在此基础上构建的。这一切的手段,都是围绕着主体、客体和信息流三个基本要素以及身份标示、身份认证、授权和审计四个行为展开的。

思维模型三:边界与隔离模型

边界和隔离是安全防御的第一手段;

与美国边界的隔离墙。无论是我们所说远古的长城还是到现在的墨西哥和美国边境之间的隔离墙,边界和隔离都是非常有效的一种最古老、最朴素的技术手段,到现在还在运用。划定边界,以界隔离,大道至简。接下来看一个相对来说比较复杂的一个事情。用安全思维模型来分析它,是否可以帮助我们更清楚地去看明白?

安全思维模型,解读谷歌零信任安全体系

下面就要用安全思维模型来分析零信任安全体系,只从纯技术角度去分析零信任安全体系,不谈零信任安全体系的部署和实施,也不谈实现零信任安全防护体系的产品节奏。也即抛开运营视角和产品视角,只从安全设计的视角去看零信任安全体系。

对于复杂问题,我们一般会依照定义问题、模块思维和问题解构三个相互依赖、彼此促进的方法。定义问题给问题解构和模块思维输出问题的边界;问题解构给定义问题和模块思维输出问题拆分的结果;模块思维给定义问题和问题解构输出模块参考。这三者一般先从定义问题开始,但是也不存在绝对的先后关系。

讲了这样一种方法之后,接下来我们回来零信任体系。首先定义问题,设置问题的边界:任何时间任何位置,设备和用户都是不可信任的,只有经过安全状态检测的设备以及使用该设备且经过身份验证的用户才可以依照企业既定的安全策略访问企业的资源。这个问题定义其实基于以下几个重要的安全假设:

1、设备存在未公开的漏洞;

2、设备存在已知漏洞但是没有及时打上补丁;

3、人可能会犯错误,导致帐号、密码等敏感信息丢失;

基于这三个重要的假设,我们接下来看整个零信任安全体系,它可能够适用的安全思维模型有:

1、CIATriad原则;

2、访问控制的三要素模型;

3、边界与隔离安全模型;

初步的问题解构可以把问题拆成以下三个:

1、设备与用户的身份定义以及安全状态感知;

2、业务系统访问(层级/角色)分解;

3、访问控制引擎不过绕过;

可以看得出来,零信任安全架构体系主要是跟访问控制模型相关。下面我们就套用访问控制模型来解读零信息安全架构。

访问主体包括设备和用户,不再是以前单纯只看用户。访问主体涉及两个基本问题,一个是身份标示和身份认证。唯一的身份标示意味着需要设备和用户注册并持续维护着设备清单库和用户/组数据库;BeyondCorp项目中,使用公钥证书唯一标示设备身份,用户使用唯一身份ID来标示身份,在Google所有服务上都使用这唯一id。设备的身份认证通过自身私钥签发数字签名,由对端系统(访问代理)利用设备的身份证书验证其签名来验证设备的身份。用户的身份认证可以根据要求,进行一次身份认证甚至二次身份认证。

访问客体包括google所有的业务服务器,比如代码库,Bug追踪库等。访问主体与客体是边界隔离的,用户不可直接访问这些资源;

接下来是访问授权。授权相对是最复杂的地方,基本上看三个要素,访问主体的属性和操作,访问客体的属性以及授权策略。另外,访问授权暗含的要求是所有的访问都必须经过访问控制器授权之后才可以访问应用系统或其它资源,这意味着访问授权控制是不可被绕过的。复杂的授权可以基于这三个要素构建细粒度的、动态的授权机制。如下图所示。

BeyondCorp项目中访问主体的属性则包括设备和用户相关的属性。设备的属性信息提供则是由“设备清单服务”完成。访问客体的属性主要包括各种应用、网络设备等资源的信任层级。BeyondCorp对用户的每一次请求都会实时依照访问策略和访问主客体的属性做出授权决策。

基于前面的三个安全假设,需要评估且持续的评估设备和用户的安全状态,设备的安全状态主要由“设备清单服务”提供。如下图所示:

这个服务核心通过漏洞扫描系统依照设备清单不断获取设备的漏洞补丁情况以及其它设备配置基线情况。

访问控制引擎不可绕过主要外化所有应用和工作流,也即谷歌的所有企业应用都分配唯一域名,在公共DNS上注册。同时把所有的应用域名解释首先指向“访问代理”,在逻辑上控制所有的访问不过绕过访问控制引擎。

运用模块化思维,Google零信任安全体系从技术层面上来看,就是这么简单。运用CIA Triad原则,边界与隔离模型,特别是访问控制模型,从底层上解构了零信任安全体系。

结语

安全在防护意识诞生之日起便成为经久不衰的话题,从单一防护到零信任的发展,人类用科技进一步保护着每一个互联网单元的安全安全方案也不再是应用层面或网络层面的单一解法,随着虚拟化技术的突破,零信任的理念也让我们看到公共和私人网络的边界将逐步消除,网络功能和上层应用也将机动组合,用户、设备、服务、应用和数据标识细粒度映射到网络会话,可以灵活的应用底层设备以应对更为丰富的防护策略。无论是物联网设备的急剧增长、还是黑客行为的增加,势必将推动企业考虑采用零信任等方式升级网络


http://www.ppmy.cn/news/1559024.html

相关文章

使用iptables+tc实现模拟连续丢包

在上一篇文章中我们介绍了使用linux的tc工具来模拟弱网丢包的能力,介绍了随机丢包,突发丢包,GE模型,组合丢包,但是唯独没有连续丢包的介绍,那是因为tc-netem本身没有模拟连续丢包的能力,需要借助…

地理数据库Telepg面试内容整理-应用层开发

在构建基于 Telepg 地理数据库 的应用时,应用层主要负责与用户交互、数据展示、地理信息处理以及系统集成。以下从开发框架、功能模块、工具链和常见实现策略四个方面详细说明应用层开发的相关内容。 应用层架构与开发框架 (1) Web应用架构 ● 前端层: ○

Spring Boot——统一功能处理

1. 拦截器 拦截器主要用来拦截用户的请求,在指定方法前后,根据业务需要执行设定好的代码,也就是提前定义一些逻辑,在用户的请求响应前后执行,也可以在用户请求前阻止其执行,例如登录操作,只有登…

FAISS进行高效的向量检索 原理详解

FAISS(Facebook AI Similarity Search)是由Facebook研发的一个用于高效相似性搜索和密集向量聚类的库。它特别适用于处理大规模向量数据库和提供快速的近邻搜索。FAISS高效的原因在于其专门的索引结构和优化的搜索算法。以下将详细解释FAISS的底层原理和…

【Sentinel】流控效果与热点参数限流

目录 1.流控效果 1.1.warm up 2.2.排队等待 1.3.总结 2.热点参数限流 2.1.全局参数限流 2.2.热点参数限流 2.3.案例 1.流控效果 在流控的高级选项中,还有一个流控效果选项: 流控效果是指请求达到流控阈值时应该采取的措施,包括三种&…

【Leetcode 每日一题】3159. 查询数组中元素的出现位置

问题背景 给你一个整数数组 n u m s nums nums,一个整数数组 q u e r i e s queries queries 和一个整数 x x x。 对于每个查询 q u e r i e s [ i ] queries[i] queries[i],你需要找到 n u m s nums nums 中第 q u e r i e s [ i ] queries[i] q…

Slater 条件与 KKT 条件

凸优化中的 Slater 条件与 KKT 条件详解 凸优化是数学优化中一类非常重要的问题,它在机器学习、信号处理、经济学等多个领域有广泛应用。本文将详细介绍凸优化中两个关键的理论工具:Slater 条件与Karush-Kuhn-Tucker (KKT) 条件。 一、凸优化问题的基本…

DP之背包基础

目录 DP简介 01背包问题 采药(01背包例题) 完全背包 疯狂的采药(完全背包例题) 背包变式 装箱问题 砝码称重 质数拆分 优化思考 DP简介 全称Dynamic Programming即动态规划 DP算法是解决多阶段决策过程最优化问题的一种常用方法。 多阶段决策过程是指这样一类特…