零信任网络架构与实现技术的研究与思考

目前,国外已有较多有关零信任网络的研究与实践,包括谷歌的 BeyondCorp、BeyondProd,软件定义边界(Software Defined Perimeter,SDP) 及盖特提出的“持续自适应风险与信任评估”等。国内也有不少安全厂商积极投身零信任市场,包括360、安恒信息等,并推出了相应的零信任产品和解决方案。这些研究与实践对零信任网络的落地应用带来了积极影响。

 

但同时也应该看到,目前,零信任网络的推广难度较大。系统设计人员在实际应用中主要面临以下几个方面的难题:

(1)不清楚零信任思想本质,容易走入堆砌技术和产品的歧途;

(2)不清楚零信任的功能架构,容易“照顾不周”“顾此失彼”,导致安全防护功能出现短板,或者出现某一方面能力特别突出的情况,整个系统能力不佳;

(3)没有掌握零信任网络实现技术,难以将功能落地。

本文针对上述问题开展了研究,期望找到适合的应对措施,为想要提升网络安全防护能力的各类组织提供参考。

1、零信任思想的本质

零信任思想的本质是基于动态的信任度赋予适度的访问权限,其关键点在于摈弃无端或超出合理范围的信任,对实体、环境等进行持续评估,并根据反馈结果及时修正策略,从而将静态的防御转换为动态的防御。

2、零信任网络功能架构

零信任网络功能架构可分解为 5 个基本功能,分别是:

(1)网络身份管理:提供对网络实体全生命周期的管理,确保所有实体来源可信、安全可控。

(2)网络身份认证:确保网络实体在发起网络行为时向相关对象证明其身份可信。

(3)网络访问授权:实现基于网络实体的身份对网络访问进行无特权的权限管控和访问控制,保证所有访问都必须得到授权。

(4)传输安全保障:实现访问数据在网络传输过程中的安全可信,确保数据访问不可抵赖、内容不被窃取等。

(5)行为安全监控:对网络实体的运行状态和网络行为的持续监测,并抑制网络攻击对系统的影响。

3、零信任网络实现技术

3.1 网络身份管理

网络身份管理的目标是在网络空间中产生网络行为的网络实体的全生命周期内,掌握网络实体与现实实体之间的映射关系,并记录其变更过程。由于网络行为均由应用软件和设备发起,还可能来自操作应用的用户,故网络身份管理的对象既可以是用户,也可以是应用和设备。在某些场合,可将一个网络中的网络实体视为一个整体,从而实现简化管理,故网络身份管理的对象还可以是网络。

人员管理主要包括身份注册、安全审查、安全培训、身份变更处理和身份注销处理几个方面。其中,身份注册的主要目的是为可信度评估提供基础,用户信息分为基本信息和高级信息。用户基本信息包括姓名、生日、年龄等;用户高级信息包括身份证号、生物特征和住址等。根据系统的安全等级选择是否需要录入高级信息,录入的信息越多,掌握的信息越全面,判断人员可信度的参数则越多。完成可信度初始评估后,还需对人员进行安全审查,包括对其信用信息、履历和犯罪记录等的调阅和审查。在安全审查通过之前,需要限制人员对网络进行所有或者部分访问。当人员正式成为员工或者客户时,至少应该在开放访问前对其进行安全培训或提示。在高安全等级系统中,为了防止出现人为安全漏洞,需要在系统使用过程中不断进行安全提示和必要的强化培训。当人员身份信息和安全审查相关信息发生改变时需要及时更新。当人员不再使用信息系统时需要及时关闭其所有权限,进行注销处理。在发生身份注销时,应该根据信息系统的保密程度,考虑是否对人员要求签署保密条款。

设备的管理方面,应结合资产管理系统对设备的采购来源、用途等基本信息,以及 IP 地址、证书的状态进行登记和随时更新,并记录相关的变更日志。根据网络安全等级要求,应选择记录良好、资本构成符合要求的供应商进行供货,并考虑是否对供应商进行背景调查。根据网络安全等级要求,考虑是否监管供应商生产供应过程,包括元器件采购、加工、装备、检验等,以提升产品安全性,一般适用于高安全网络。接收设备时,应对设备进行系统安全检测,比如病毒扫描、漏洞扫描,掌握设备的安全风险状态。在设备上线前和运行过程中,应及时对设备进行安全加固,包括病毒查杀、修补漏洞、升级病毒库等。若设备不再接入网络使用,则应下线处理,对于安全要求高的组织机构,应该强制要求拆除设备硬盘,或者擦除硬盘数据,最后才能将设备转作他用或者报废。

应用的身份管理主要关注应用的开发、测评和部署 3 个阶段。在应用开发阶段,至少应先明确安全性需求,并明确是否允许使用高风险数据库或者第三方插件等。在应用开发完成后,应组织专业机构对应用安全性进行测评,包括是否存在已知漏洞、是否符合安全性设计要求等。在应用部署阶段,应对应用进行上线审批,建立软件白名单,通过终端管控软件控制设备允许运行的软件。

网络安全等级越高,评估的因素就越多,要求掌握的信息就越丰富。在建立身份管理系统、资产管理系统、软件白名单和网络组织清单时,信息采集应满足法律的要求,如果是采集个人信息,应该得到个人的授权,并且数据的生成、传递和保存必须采用制度和技术保护,保证数据的保密、真实和完整。

3.2 网络身份认证

网 络 身 份 认 证 时, 不 同 实 体 选 用 不 同 的 认证方式。人员认证方法有基于口令、生物特征或者私人持有的基于硬件的可信处理模块(Trusted Processing Module,TPM)等的方法。设备和应用的认证方法有通过软数字证书或者设备绑定的 TPM来认证的方法。网络的认证可以通过网络代理设备或软件代理网络整体对外认证,从而不用对网络中多个实体分别认证,在某些对计算或网络开销比较敏感的场合可以考虑使用。

身份认证方法的选择通常根据风险高低决定。当环境风险小到一定程度时,身份认证可以通过传递身份标识(如 IP、端口等)实现,如同新认识的朋友相互交换名字就知道对方是谁。但当环境风险不够高时,身份认证必须采用更安全的方式。一般来说,首先使用非常强的认证手段保证一定是该实体;其次生成一个可验证的身份断言用于基本业务,即“初始强认证”与“使用时弱认证”结合,可兼顾安全性和便利性。“初始强认证”一般在系统开设、业务开通阶段进行,比如用户到银行开户需要本人到柜台出示身份证,新员工入职时公司对员工进行安全审查,此工作可以与网络身份管理的身份录入和信息审查合并进行。经过“初始强认证”后,进入“使用时弱认证”阶段,银行颁发给用户一张银行卡,并让用户设置一个口令,允许用户通过银行卡和口令办理存取款业务;公司也给员工办理一张员工证,允许员工凭该证出入工作环境。但用户银行卡和口令必须经过 ATM 机在线验证,员工证也必须经过公司门卫手工验证或者刷卡机在线验证。

采用可变强度的身份认证。当环境风险发生变化时,身份认证强度应该及时调整。比如首次使用新设备风险较高,需要使用强认证、设置口令并绑定设备,后续允许使用口令进行操作,但再次更换新设备时,需要再次使用强认证、设置口令并绑定设备。在进行高风险操作时,也需要提高认证强度。

必须警惕口令不当使用。某些系统可能必须多人使用同一账户操作业务,造成口令知悉范围较大,没有与人绑定;某些系统口令复杂度要求低,抗攻击能力弱。上述不当的口令使用会带来很多风险,应该设法降低风险。在无法与人绑定账户的系统中,应增强环境准入控制或用其他方法保证使用者的合法性,在口令复杂度要求低的系统中,应强制提升密码复杂度要求。

使用的数字证书应当定期更新。相当多的系统使用数字证书方式进行认证,却忽视了数字证书有效期的限制。为提升安全性,其证书需要强制定期更新。此外,证书更新途径是否安全、更新周期是否得到控制等因素都会影响可信度。

充分利用信任传递技术来构建信任链 。如图 1所示,信任传递是指当 B 在一定程度上信任 C 时,A 依赖于对 B 的信任而一定程度地信任 C。比如员工与公司门卫并不熟识,但员工因公携带物品离开公司大门,若向公司门卫出具部门领导签署的审批单,公司门卫可依据审批单对其放行。上述例子中,A 对 B 和 B 对 C 的信任称为直接信任,而 A 对 C的信任称为间接信任。A 基于 B 从而对 C 的信任形成信任链。在信任链上,相邻实体间不都是绝对信任,所以信任度会随着信任传递次数的增加而减小。此外,A 对 C 的信任程度与 A 对 B 和 B 对 C 的信任程度正相关,但不一定线性。特别的,若 A 不再信任 B 或 B 不再信任 C,则 A 也不再信任 C。信任传递用途很广,只要两个实体能够借助其他实体生成一个信任链,就可以计算出信任度。

3.3 网络访问授权

一般情况下,应采用基于身份的访问控制技术,或者相应的人机结合的管理方式来进行网络授权。很多情况下,网络实体的标识不会固定不变,比如对于移动环境或者使用动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)技术的局域网,如果基于固定网络标识进行访问控制,则无法快速调整策略以适应动态的网络标识变化,给访问控制策略维护带来极大负担。这时候应该配置基于身份的访问控制策略,通过认证过程跟踪网络访问标识的动态变化,随时自动更新策略,提高策略的安全性和适应性。

524d614edbcd404cac6a90d50ffb137d.png

       图 1 任链关系及基于信任链的信任度

基于动态信任度和风险的访问控制可极大增强访问控制的安全性。零信任思想之所以更安全,是因为其根据信任度做出是否允许访问的决策。因为身份证明并不代表对方是安全的,所以大量系统仅通过身份认证就开放安全策略的方式存在诸多安全漏洞。判断是否开放安全策略的依据应该是对方是否可信,以及是否具有高风险。信任度和风险评估可从第三方获取,也可基于交互行为与预期的对比不断积累形成。

统一权限管控解决全网权限的一致性问题,确保不因权限差异导致访问受阻或产生权限漏洞。统一权限管控的高效架构是树形分级架构,该架构从主干到分支每一级管辖本级策略,并逐级细化,分支仅在主干约束范围下定制详细策略。如图 2 所示,A 分支到 B 分支的主干路径上的策略,只管理整个A 分支能否访问整个 B 分支,但 A 分支入口和 B 分支入口的策略则管理 A 分支的实体 a 能否访问 B 分支的实体 b 的约束。这样的管理架构有利于降低主干策略压力,分支策略虽受限于主干策略的限制,但有一定自主灵活度。

062340e67cb84f519ff2ec5b94eb0401.png 

         图 2 树形分级的权限管控架构

权限同步一般分为管理流驱动和业务流驱动两类。管理流驱动是指权限在各个策略管控节点之间进行同步,需要占用带宽,且每个策略管控节点需要存储大量的权限(无法事先判断权限是否有用),处理访问时本地已经有策略,处理延迟小。业务流驱动无须各个权限管控节点之间进行同步,访问者访问时向策略控制点提供权限信息,策略控制点验证权限真实性并进行生成策略,需要花费更多时间,处理延迟大。权限同步方案的选择需要根据具体需求进行。

3.4 传输安全保障

因为数据在传输时可能受到窃取、伪造、篡改和重放攻击,所以必须考虑数据传输受到上述攻击时系统是否有安全风险。

常见的数据传输安全保护技术包括互联网安全协 议(Internet Protocol Security,IPSEC)、 安 全 接口层(Secure Socket Layer,SSL)等。IPSEC 由操作系统在网络层为应用程序统一提供基于 IP 的安全性能,对应用程序是透明的。SSL 为应用层提供标准安全接口,需要应用程序进行适配实现。IPSEC和 SSL 属于网络认证和加密,可以部署在路径网关上,也可以部署在端点上。在带宽和处理能力允许的情况下,两种技术可以同时运用,进一步增强数据传输的安全性。

数据安全的传输通道构建可以因地制宜,比如在两个局域网之间的数据传输中,可以在各自网络的出口架设实体网关,对经过网关的数据进行保护,也可以在对外提供服务的数据服务器上部署代理软件,或者在其物理接口处部署实体网关,接管出入服务器的数据流。至于局域网内部流量是否加密不应一概而论,需要综合考虑网络安全需求、环境威胁、安全脆弱性等多方面因素。

3.5 行为安全监控

行为安全监控通过分析网络实体的各种攻击和异常行为的活动,可以及早发现威胁并进行风险控制,对实体信任度进行动态评价。主要方法包括网络攻击抑制、异常行为监测。

网络攻击抑制用于检测并抑制网络中已知攻击,从而对网络进行保护。网络攻击检测方法主要有两种:一种是通过检测流量是否满足某种已知特征来发现攻击,即基于流量特征匹配的攻击检测方法,这种方法对拒绝服务(Deny of Service,DoS)和 分 布 式 拒 绝 服 务(Distributed Deny of Service,DDoS)等流量攻击有效 ;另一种是通过检测网络包内容是否满足某种已知特征来发现攻击,即基于内容特征匹配的攻击检测方法,这种方法对于漏洞利用、恶意代码等攻击有效 。当发现攻击后,可以对攻击进行抑制,但很多情况下,攻击检测设备难以识别正常访问和攻击访问。攻击监测分析人员不断地深入分析攻击特征,对匹配规则进行完善,但总会出现滞后,这正是零日攻击的突破口。在数据中心,攻击检测通常搭配流量清洗工作,当发现攻击后,攻击检测设备联动网络交换设备进行引流清洗,经过清洗后,正常访问流量被导回网络继续转发。

异常行为监测用于进一步检测超越使用习惯的高风险操作,发现各种未知攻击,比如后台木马程序借用用户和终端身份发起越级访问。异常行为监测与纯粹的基于行为的网络攻击检测不同,基于行为的网络攻击检测主要通过事先把攻击模式和特征进行总结成为模型,再通过抓取流量进行分析,检查是否存在匹配相似的网络流量,从而判断是否存在攻击行为;而网络行为安全检测是评估用户行为超出正常习惯是否带来信任度降低的方法。网络行为安全检测通过不断收集正常业务的习惯,进行用户、流量、包长、时刻、间隔等多维的分析和总结归纳,形成正常业务习惯模型。有了正常业务习惯模型后,再对新流量进行分析,评估是否符合正常业务习惯特征,最终给出相应的可信度一维评价。网络行为安全检测使用人工辅助机器学习或深度学习技术,对此,研究者们提出了很多理论方法,如文献 [10] 提出了在静态的身份认证之上,通过对用户行为的实时评估,引入奖惩因子和时间因子,实现动态的信任度评价;文献 [11] 提出了一种基于灰色关联度的信任模型,对节点进行细粒度的信任评估,抑制不诚实的节点的访问行为;文献 [12] 提出了一种基于隐式反馈控制的用户行为度量模型,构建用户的状态和行为基线,并根据基线评估用户的可信度,进而实施动态的信任度评价。

4、零信任网络推广应用的突破点

利用零信任提升网络安全防护能力不能仅依靠优化网络拓扑、提升点位产品的功能,还需要在制度、架构及配套上进行相应的改变与提升。

(1)在管理方面,需要引导相关行业分步细化和落实《信息安全等级保护管理办法》等国家标准和配套的顶层制度,逐步提升全行业中涉及信息网络领域的整体安全管理水平。

(2)在业务融合方面,需要引导相关行业认识到安全能力的提升对业务能力增强的积极意义,以及两者相辅相成的关系,促进其做好充分的思想和物质准备去迎接变革。

(3)在成本方面,建立市场促进机制,推动相关行业通过市场手段共享成果,降低成本,为提升网络能力构建基础。

5、结 语

本文针对零信任网络在现实中推广存在的诸多难题,从体系架构、技术方法、管理制度等多角度进行了多方面的分析。结果表明,充分认识零信任思想本质,结合实际情况,采用契合业务和网络特点的技术方法,各行各业都能够利用零信任思想加强网络防御能力,有效降低网络安全风险。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/50197.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Istio网关Gateway 启用TLS

Istio网关Gateway概述 Istio网关Gateway是一个负责处理南北向流量的组件,它通常会暴露服务网格内部的服务,以便外部的请求能够访问到服务网格中的服务。Istio网关Gateway支持多种协议,包括HTTP、HTTPS和GRPC等。 在Istio网关Gateway中&#…

DevOps-Jenkins

Jenkins Jenkins是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。 官网 应用场景 场景一 研发人员上传开发好的代码到github代码仓库需要将代码下载nginx服务器部署手动下载再…

C++之poll与epoll总结(一百六十九)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

优化基于tcp,socket的ftp文件传输程序

原始程序: template_ftp_server_old.py: import socket import json import struct import os import time import pymysql.cursorssoc socket.socket(socket.AF_INET, socket.SOCK_STREAM) HOST 192.168.31.111 PORT 4101 soc.bind((HOST,PORT)) p…

MVC与MVVM模式的区别

一、MVC Model(模型):用于处理应用程序数据逻辑,负责在数据库中存取数据。处理数据的crud View(视图):处理数据显示的部分。通常视图是依据模型数据创建的。 Controller(控制器&…

25.6 matlab里面的10中优化方法介绍—— 遗传算法(matlab程序)

1.简述 遗传算法(Genetic Algorithm, GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解(所找到的解是全局最优解)的方法。 参数编码、初始群体的设定…

Generative Diffusion Prior for Unified Image Restoration and Enhancement 论文阅读笔记

这是CVPR2023的一篇用diffusion先验做图像修复和图像增强的论文 之前有一篇工作做了diffusion先验(Bahjat Kawar, Michael Elad, Stefano Ermon, and Jiaming Song, “Denoising diffusion restoration models,” arXiv preprint arXiv:2201.11793, 2022. 2, 4, 6,…

【万字长文】SpringBoot整合SpringSecurity+JWT+Redis完整教程(提供Gitee源码)

前言:最近在学习SpringSecurity的过程中,参考了很多网上的教程,同时也参考了一些目前主流的开源框架,于是结合自己的思路写了一个SpringBoot整合SpringSecurityJWTRedis完整的项目,从0到1写完感觉还是收获到不少的&…

前端,js , Error in created hook: TypeError ,有bug了

怎么兄弟,遇到bug了???你开心吗,哈哈哈哈

论文笔记--Skip-Thought Vectors

论文笔记--Skip-Thought Vectors 1. 文章简介2. 文章概括3 文章重点技术3.1 Skip Thought Vectors3.2 词表拓展 4. 文章亮点5. 原文传送门6. References 1. 文章简介 标题:Skip-Thought Vectors作者:Ryan Kiros, Yukun Zhu, Ruslan Salakhutdinov, Rich…

7.28 作业 QT

手动完成服务器的实现&#xff0c;并具体程序要注释清楚: widget.h: #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpServer> //服务器类 #include <QTcpSocket> //客户端类 #include <QMessageBox> //对话框类 #include …

乐划锁屏充分发挥强创新能力,打造内容业新生态

乐划锁屏作为新型内容媒体,在这一市场有着众多独特的优势,不仅能够通过多场景的联动给内容创作者带来了更多可能性,还促进了更多优质作品的诞生,为用户带来更加丰富多彩的锁屏使用体验。 作为OPPO系统原生的OS应用,乐划锁屏一直致力于打造为用户提供至美内容的内容平台,吸引了全…

ETHERNET/IP转RS485/RS232网关什么是EtherNet/IP?

网络数据传输遇到的协议不同、数据互通麻烦等问题&#xff0c;一直困扰着大家。然而&#xff0c;现在有一种神器——捷米JM-EIP-RS485/232&#xff0c;它将ETHERNET/IP网络和RS485/RS232总线连接在一起&#xff0c;让数据传输更加便捷高效。 那么&#xff0c;它是如何实现这一功…

解决 tensorflow 出现的 ImportError: Could not find the DLL(s) ‘msvcp140_1.dll‘. 问题

在安装完tensorflow库后出现 问题详述&#xff1a; ImportError: Could not find the DLL(s) msvcp140_1.dll. TensorFlow requires that these DLLs be installed in a directory that is named in your %PATH% environment variable. You may install these DLLs by downlo…

FS32K144官方提供串口Bootloader对接Matlab串口烧写程序

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 前言 Bootloader升级工具&#xff1a;可用TTL、232、485&#xff08;硬件收发模式&#xff09;,其中的一种&#x…

K8s-资源管理(二)

文章目录 2. 资源管理2.1 资源管理介绍2.2 YAML语言介绍2.3 资源管理方式2.3.1 命令式对象管理2.3.2 命令式对象配置2.3.3 声明式对象配置 2.4. 模拟使用普通用户来操作2.5 kubectl 一些基本命令2.6 使用个人的 docker 仓库的镜像 2. 资源管理 2.1 资源管理介绍 在kubernetes…

JMM是如何保证原子性呢?

3.3.1加锁 锁是一种通用技术&#xff0c;比如Java提供的Synchronized关键字就是锁的一种实现&#xff0c;Synchronized是排他锁/独占锁&#xff0c;就是有你没我的意思&#xff0c;只要其他线程到来访问&#xff0c;发现锁还未释放&#xff0c;就要在外面等待&#xff0c;因为S…

linux系统下(centos7.9)安装Jenkins全流程

一、卸载历史版本 # rpm卸载 rpm -e jenkins# 检查是否卸载成功 rpm -ql jenkins# 彻底删除残留文件 find / -iname jenkins | xargs -n 1000 rm -rf二、环境依赖安装 yum -y install epel-releaseyum -y install daemonize三、安装Jenkins Jenkins官网传送带&#xff1a; …

Nginx配置WebSocket反向代理

1、WebSocket协议 ​ WebSocket协议相比较于HTTP协议成功握手后可以多次进行通讯&#xff0c;直到连接被关闭。但是WebSocket中的握手和HTTP中的握手兼容&#xff0c;它使用HTTP中的Upgrade协议头将连接从HTTP升级到WebSocket。这使得WebSocket程序可以更容易的使用现已存在的…

微服务入门---SpringCloud(一)

微服务入门---SpringCloud&#xff08;一&#xff09; 1.认识微服务1.0.学习目标1.1.单体架构1.2.分布式架构1.3.微服务1.4.SpringCloud1.5.总结 2.服务拆分和远程调用2.1.服务拆分原则2.2.服务拆分示例2.2.1.导入Sql语句2.2.2.导入demo工程 2.3.实现远程调用案例2.3.1.案例需求…