一、前言

随着数字化时代的不断发展,网络安全已经成为企业、机构和个人不可忽视的重要议题。传统的网络安全模型往往侧重于防御边界和信任内部网络,但随着网络攻击日益复杂和频繁,这种模式已经不再足够。

在这样的背景下,零信任网络访问(Zero Trust Network Access,ZTNA)应运而生。ZTNA不再依赖于传统的网络边界防御,而是以最小化信任最大化安全的理念,重新定义了网络访问的方式。

再重新提一下零信任架构(ZTA)和零信任网络访问(ZTNA)的区别:

  • 零信任架构(ZTA)是一种信息安全架构和理念,它不是一个估计的产品(参见本Blog系列关于零信任架构的介绍)
  • 零信任网络访问(ZTNA)是一种具体的安全解决方案,即它是具体的一种产品,我们可以理解为ZTNA是零信任架构下的针对网络访问的一个具体实现


二、用时代的发展观看VPN

1.VPN使用场景

VPN(虚拟专用网络)是过去很长一段时间里企业使用的一种远程接入的网络访问方式,它广泛地应用于一些特定的场景:

  • 远程办公:在企业内部网络上,有员工需要使用的数据和资源,譬如文档、程序等等。为了保护这些数据和资源的安全,员工必须接入到公司网络才能进行访问,在这种情况下,员工可以使用VPN接入到公司网络中。
  • 分支机构互联:如果公司存在多个办公室或者分支机构,公司可以在办公室和分支机构之间建立VPN连线,从而在公司内部形成一个互联互通的网络。
  • 外部供应商/第三方通过VPN协作:当有外部供应商/第三方需要协作时,可能要为他们提供VPN接入的方式让他们能够访问企业内部资源

典型的VPN的网络架构图可能是这样的:

漫谈企业信息化安全 - 04.零信任网络访问(ZTNA)_信息安全

2.VPN的局限性

随着企业网络架构复杂化,传统的VPN接入方式有越来越多的局限性不能适应企业的信息安全要求,具体体现在一些的一些方面:

1)VPN 无法强制实施身份验证策略

VPN 的主要不足在于,如果黑客能设法获得用户的 VPN 凭据,则可以快速获取其访问权限。如果犯罪分子想要获得公司整个网络的访问权限,那么只需设法获取某员工的 VPN 凭据即可。

网络犯罪分子越来越倾向于将目标对准使用 VPN 的团队。网络犯罪分子利用 VPN 漏洞渗透网络,或试图通过网络钓鱼获取团队成员的 VPN 凭据。

2) 即使已被破坏的设备也能使用 VPN 远程连接

如果想连接到特定网络,则可以从任意设备进行连接,这意味着也可以使用易受攻击的设备进行连接。当通过 VPN 连接到另一个网络时,会在两个设备之间来回传输数据,这意味着即使使用 VPN,数据泄漏和潜在病毒也有可能交叉传播。

3)VPN 是全有或全无系统

VPN 不支持“部分访问权限”,也就是说,要么可以访问整个网络,要么完全不能访问。这使得为部分用户提供访问权限极具挑战性。例如,假设你希望第三方承包商可以利用公司网络工作,但只允许他们访问部分网络。通过 VPN 向第三方提供访问权限即表明会授予其对整个网络的访问权限。

4) VPN 难以维护

并非所有 VPN 工具都具备管理功能,足以帮助 IT 团队管理数百台设备上的各种软件。如果团队决定使用 VPN 访问网络,则必须逐个手动更新所有设备,不但麻烦而且难以实施。

同时也会带来其他风险——即使只有一台设备在安装 VPN 时出错,也可能导致整个公司的网络出现其他安全漏洞。

3.VPN安全漏洞

过去几年中曝光的VPN漏洞事件不胜枚举,下面是一些比较显著的例子:

  1. CVE-2019-14899漏洞:这是一个影响Linux和一些Android设备的严重漏洞,允许攻击者在VPN连接上通过网络进行数据包注入、监听和修改。攻击者可以利用这个漏洞来确定VPN用户的真实IP地址。
  2. Pulse Secure VPN漏洞:Pulse Secure VPN曾受到多个漏洞的影响,其中包括CVE-2019-11510、CVE-2019-11539和CVE-2019-11542等。这些漏洞允许攻击者远程执行代码、绕过身份验证、获取敏感信息等。
  3. Fortinet VPN漏洞:Fortinet曾发现多个VPN产品中的严重漏洞,例如CVE-2018-13379和CVE-2018-13382。这些漏洞可能允许攻击者远程访问设备、绕过身份验证或执行代码。
  4. NordVPN服务器受到攻击:2019年,NordVPN披露了一起攻击事件,黑客成功入侵了他们的服务器,并获得了对一些VPN服务器的访问权限。尽管NordVPN声称没有用户数据泄露,但这个事件引起了对VPN服务安全性的广泛关注。
  5. SuperVPN和其他免费VPN的安全问题:一些免费的Android VPN应用程序(如SuperVPN)被发现存在安全问题,包括未加密的数据传输、恶意软件注入和隐私泄露等。

 

总结来说:

随着企业IT架构越来越复杂,移动办公、第三方协作等需求越来越突显的情况下,企业的网络边界已经越来越模糊,在这种情况下,VPN的局限性越来越明显。因此,是时候深入思考是否有更好的远程接入产品能够适应这些需求,ZTNA就是顺应这个需求而发展起来的网络接入产品。


三、ZTNA是什么

我们先用一个形象的比喻来说明VPN和ZTNA。

VPN:传统城堡防御

想象一下你住在一个古老的城堡里,这座城堡有高墙和护城河,所有的防御设施都集中在城堡的外围,任何想要进入城堡的人必须通过吊桥和城门。只要通过了这些防线,进入城堡的人就被认为是安全的,可以自由地在城堡内行走。

ZTNA:现代高科技保安系统

现在,想象一下你住在一个现代化的高科技建筑里,这座建筑没有传统的高墙和护城河,而是使用了最新的安全技术。每个人进入建筑之前都需要通过多层身份验证,每个房间都有独立的访问权限控制系统,只有经过授权的人才能进入特定的房间。

 

ZTNA的核心原则就是:

  1. 永不信任,始终验证:ZTNA假设任何用户、设备或网络都可能被攻击或已经被攻陷,因此每次访问请求都需要进行身份验证和安全检查。
  2. 最小特权访问:用户和设备只被授予完成任务所需的最低权限,限制对敏感资源的访问。
  3. 细粒度访问控制:ZTNA使用细粒度的策略来控制对应用程序和数据的访问,这些策略基于用户身份、设备状态、地理位置、访问时间等因素。
  4. 持续监控和审计:对所有访问请求进行实时监控和审计,确保符合安全策略,发现异常活动及时响应。


四、ZTNA的工作原理

漫谈企业信息化安全 - 04.零信任网络访问(ZTNA)_零信任_02

1.ZTNA的核心组件

如上图所示,ZTNA包括:

  1. 身份和访问管理(Identity and Access Management, IAM),基于用户身份、角色和情境(如时间、位置、设备等)来控制访问权限。设置多因素认证等。
  2. 设备验证及授权(Device Authentication and Authorization),设备验证确保设备的合规性、健康状况、配置环境等等因素进行确认,确保只有符合条件的设备才能够接入服务。
  3. 策略引擎(Policy Engine),用于定义和管理安全策略,决定谁可以访问哪些资源,什么时候以及在什么条件下可以访问。根据预设的安全策略和当前上下文信息做出访问决策。
  4. 网络和应用访问控制(Network and Application Access Control),对网络进行微分段(Microsegmentation):将网络分成更小的片段,限制内部资源之间的自由通信,减少攻击面。应用代理(Application Proxy):通过代理访问应用,隐藏内部网络结构,减少直接暴露的攻击面。
  5. 持续监控和评估(Continuous Monitoring and Assessment),收集、分析和关联安全日志和事件,实时监控和响应威胁。通过用户和实体行为分析识别异常活动。
  6. 加密与数据保护(Encryption and Data Protection),保护静态数据和传输中的数据,确保数据的机密性和完整性。防止敏感数据未经授权的泄露和流出。

2.ZTNA的工作流程

在一次ZTNA访问请求中,会发生如下的工作流程:

  1. 当用户尝试访问企业资源时,首先需验证其身份,在验证身份过程中,可能包括密码、硬件令牌、生物特征等等。
  2. 在身份验证通过后,进行设备合规性检查。这里的合规性可以包括各种因素,譬如操作系统及版本、补丁级别、防毒软件情况、浏览器版本等等。
  3. 环境评估,对用户所处的环境进行评估,譬如用户位置、访问时间、网络状况等等
  4. 策略引擎根据预定义的访问策略,进行授权,用户被允许或者被拒绝访问。
  5. 策略执行点执行策略,如果用户被授权访问,则为用户建立与此资源间的访问,包括网络隧道等。
  6. ZTNA会持续监控用户的行为,并根据用户行为进行动态权限调整
  7. 生产访问日志和安全报告,提供合规性检查证据


五、ZTNA的一般实施方法

要实施ZTNA,建议从以下的一些方面进行规划:

  1. 评估现有环境和需求
  • 评估现有网络架构:了解当前网络基础设施、应用系统、用户和设备分布。
  • 确定安全需求和目标:识别关键资源和敏感数据,定义零信任的具体安全目标。
  1. 制定零信任策略
  • 策略制定:基于最小权限原则制定访问控制策略,明确谁可以访问什么资源、在什么条件下访问。
  • 风险评估和优先级设置:评估风险,确定实施ZTNA的优先级,首先保护最关键的资产。
  1. 选择合适的ZTNA解决方案
  • 供应商评估:评估和选择满足需求的ZTNA解决方案供应商,考虑功能、兼容性、成本等因素。
  • 试点测试:在小范围内(如一个部门或应用)试点测试选定的解决方案,验证其效果和可行性。
  1. 身份和访问管理(IAM)集成
  • 多因素认证(MFA):实施多因素认证以加强用户身份验证。
  • 单点登录(SSO):集成单点登录系统,简化用户访问和提高安全性。
  1. 设备安全和端点管理
  • 设备注册和验证:确保所有访问网络的设备都经过注册和验证。
  • 设备合规性检查:实施设备合规性检查,确保设备符合安全标准和策略。
  1. 网络和应用访问控制
  • 微分段(Microsegmentation):对网络进行微分段,限制不同资源之间的直接通信。
  • 应用代理和安全网关:部署应用代理和安全网关,确保对应用访问的控制和监控。
  1. 持续监控和动态响应
  • 实时监控:持续监控用户和设备活动,收集安全日志和事件数据。
  • 行为分析:通过用户和实体行为分析(UEBA)识别异常活动,提升威胁检测能力。
  • 自动化响应:实施安全自动化和编排(SOAR),提高对威胁的响应速度和效率。
  1. 培训和用户意识
  • 安全培训:定期对员工进行安全培训,提高他们的安全意识和行为规范。
  • 用户支持:提供技术支持,帮助用户适应新的安全措施和访问控制机制。
  1. 评估和优化
  • 定期审计:定期对ZTNA系统进行安全审计,评估其有效性和合规性。
  • 策略优化:根据审计结果和最新威胁情报,不断优化安全策略和流程。


六、ZTNA的产品介绍及选择建议

目前市面上ZTNA的产品非常丰富,那我们要怎么选择合适的ZTNA产品呢,我建议从一下的一些方面去关注:

  1. 需求及预算,不同的ZTNA产品的能力和定价可能存在较大的差异,您可能需要尽量了解各个产品之间的功能与价格
  2. 方案的完整性,企业信息化安全中,ZTNA是其中的一个部分,其他还有特权访问、第三方访问、设备管理等等其他因素,您选用的方案是否能够提供一致的用户体验并涵盖其他所需功能
  3. 供应商合规性认证,供应商合规性认证,例如ISO27001、SOC2等能够很好地证明了供应商在公司治理、产品开发、交付、运维等方面的安全意识与能力,选择具有合规性认证的供应商是对产品使用的很好的保障
  4. 技术服务能力,看供应商是否有较好的技术服务能力,本地化服务团段
  5. 部署需求,是否接受SaaS服务,还是需要本地化部署
  6. 集群规模,网关和边缘网络节点集群是否丰富,特别是在您的业务范围内的节点是否丰富

这里我们罗列了一些市面上比较常见的ZTNA相关的产品给大家参考:

  1. Splashtop Secure Workspace,它是来自Splashtop的一款产品,它提供了包括ZTNA、特权访问、第三方访问、密码管理、即时访问等等功能在一起的一套SaaS服务。
  2. ZScaler Private Access (ZPA),Zscaler Private Access是一种基于云的ZTNA解决方案,提供安全、无缝的应用访问,而无需暴露内部网络。
  3. Palo Alto Networks Prisma Access,Prisma Access是Palo Alto Networks的云交付ZTNA解决方案,提供全球范围内的安全访问。
  4. Perimeter 81,他们的服务专注于提供零信任网络访问解决方案,帮助企业建立更加安全、灵活的访问控制。
  5. Fortinet,是由Fortinet提供的零信任网络访问解决方案,旨在通过严格的身份验证和访问控制,实现对企业资源的安全访问。


参考

1) VPN 安全风险须知 (splashtop.cn)

2) Zscaler ThreatLabz 2024 VPN Risk Report

3) Vulnerabilities in business VPNs under the spotlight (welivesecurity.com)

4) Mitigating VPN Vulnerabilities: Understanding the… | BeyondTrust

5) Splashtop Secure Workspace:安全的第三方访问

6)Ensure Secure Private Access with Zscaler ZPA

7)Security Service Edge | Prisma Access - Palo Alto Networks

8)Perimeter 81 | The World’s First Cybersecurity Experience Platform

9)Zero Trust Network Access (ZTNA) to Control Application Access | Fortinet