新闻动态

News information

《工业信息安全》杂志刊登:基于零信任的工控系统勒索防御体系【2】

<<返回

2023年10月11日 16:10

02.
零信任网络安全架构概述

零信任的核心思想是“持续验证,永不信任”,默认网络内外的任何用户、系统、设备均不可信,并在最低访问权限策略下持续开展身份认证与授权。


零信任5大公理:

(1)网络无时无刻不处于危险环境中;

(2)网络自始至终存在外部或内部威胁;

(3)网络位置不足以决定网络可信程度;

(4)所有的设备、用户和网络流量都应当经过认证和授权;

(5)网络安全策略必须是动态的,并应基于尽可能多的数据源计算得来。


零信任包括如下3大核心技术,即身份认证与访问管理(IAM)、微隔离(Micro Segmentation)、软件定义边界(Software Defined Perimeter)。


零信任包括7大支撑维度,即用户、设备、应用程序和工作负载、数据、可视化和分析、自动化和编排。

03.

工控系统场景下基于零信任的勒索防御设计

3.1 能力目标


工控系统场景下基于零信任的勒索防御设计的能力目标分析如图1所示。


1.png

图1 工控系统场景下基于零信任的勒索防御设计的能力目标分析示意图


工控系统场景下基于零信任的勒索防御设计的攻击链能力目标分析如图2所示。

 

2.png

图2 工控系统场景下基于零信任的勒索防御设计的攻击链能力目标分析

3.2 实现途径


3.2.1 整体框架

工控系统场景下基于零信任的勒索防御设计的整体框架如图3所示。


3.png

图3 工控系统场景下基于零信任的勒索防御设计的整体框架

3.2.2 一级分解

工控系统场景下基于零信任的勒索防御设计的整体框架的一级分解如图4所示。


4.png

图4 工控系统场景下基于零信任的勒索防御设计的整体框架的级分解示意

(1)访问主体与目标客体

工控系统场景下基于零信任的勒索防御设计的整体框架下,访问主体与目标客体如图5所示。

5.png

图5 工控系统场景下基于零信任的勒索防御设计的访问主体与目标客体示意图

(2)身份标识管理系统

由于网络是分层的,因此终端的身份也是分层的,通常终端具有三种身份:设备身份、网络接入身份、应用身份,不同身份对应着不同的标识。


① 设备身份:通常是由设备厂商分配标识设备主体的唯一标识,如移动网终端的IMEI,以太网终端的MAC地址,物联网中的OID。


② 网络接入身份:是由网络运营商或管理者分配给终端的标识,并同时生成凭证,用于终端接入网络时的身份识别和认证,如移动网络终端IMSI,有线网络运营商分配用户名。


③ 应用身份:由应用服务商分配,并同时生成凭证,用于终端访问业务应用时的身份识别和认证,其范围更广泛,如果用于语音通信业务的MSISDN号码,用于即时通讯系统的用户名,工业摄像头的分配摄像头编号。


(3)身份认证与授权系统

不同的身份认证主体不同,认证技术也不相同。比如在移动网络接入网中使用5G-AKA、EAP-AKA等认证技术;在以太网中使用802.1x等认证技术;应用层认证技术更是多种多样,如在移动网中使用GBA(通用引导架构,Generic Bootstrapping Architecture)、AKMA (应用程序的身份验证和密钥管理,Authentication and Key Management for Applications);在物联网平台使用口令认证、X.590的认证、域认证等。


在上述身份标识中,还存在一类特殊的标识,网络身份标识,即IP地址,作为纽带将上述标识关联起来。由于零信任安全主要是在网络层面执行安全策略,也就是说需要根据IP进行业务的访问控制。目前主要是将终端接入身份与IP地址进行了关联,根据终端的接入身份分配IP,并根据IP进行访问的控制。


(4)资产管理系统

资产管理系统逻辑框架如图6所示。


6.png

图6 资产管理系统逻辑框架示意图

1、资产识别和管理技术点

Gartner在《Hype Cycle for Security Operations,2021》中涉及资产识别和管理的两个技术点:外部攻击面管理(EASM)和网络资产攻击面管理(CAASM)。


2、资产类别

资产包括实物资产(如工控设备、仪器仪表)、数字资产(如网站、IP、域名、SSL证书和云服务)和数据。


3、资产识别

资产识别可以从网络侧主动或被动识别,也可以从终端侧识别。


① 网络侧主动识别是指主动向目标资产发送数据包,目标资产收到数据后返回响应数据包,通过分析响应数据包获取目标资产信息的识别方式。


② 网络侧被动识别是指利用网络嗅探工具获取目标网络的数据报文,通过分析报文数据得到网络资产信息。


③ 终端侧识别是指利用安装在终端的agent采集相关信息来识别资产。

零信任代理方便终端侧识别资产,零信任网关可用于网络侧主动或被动资产识别,零信任控制平面实现资产融合分析。要实现相对完整的、准确的资产识别,往往需要结合三种方式。其中,网络侧被动识别技术实现途径如图7所示。


7.png

图7 网络侧被动识别技术实现途径

(5)软件定义可信网络边界

软件定义可信网络边界系统是一个基于零信任的访问控制系统,需要确保合法用户、合法设备、合法应用访问自己权限内的目标资源。软件定义可信网络边界系统对防勒索的价值是缩小风险面、远程访问监测与控制。


软件定义可信网络边界系统可参照文献[3]的架构设计,如图8所示。


8.png

图8 SDP架构

如图9中的SDP控制器至少具备如下功能:

① 单包验证协议SPA

② 身份验证和访问管理(本地或第三方)

③ 访问控制策略:哪些身份可以通过哪些设备访问组织中的哪些服务


零信任代理之IH发起主机至少具备如下功能:

① 发起主机身份标识

② 单包验证协议SPA

③ 发起主机相关数据采集与状态检查

④ 与AH安全通信


SDP接收主机AH,可能是零信任代理,也可能是零信任网关,至少具备如下功能:

① 接收来自SDP控制的控制信息

② 充当IH与受保护资源之间的通信交换站:从IH接收访问流量然后转发到被保护的后端服务,后端服务的响应信息通过AH返回IH。


9.png

图9 SDP控制器

(6)持续监测与动态授权系统

持续监测与动态授权系统(IAM)如图10所示,其对防勒索的价值是能及时发现勒索攻击的相关活动并能够及时阻止。


10.png

图10 持续监测与动态授权系统示意图

IAM的核心思想是持续认证和动态授权。基于零信任的动态评估与弹性授权的基本原则,可实现如下功能:


① 实现统一身份访问管理。对访问管理系统下进行整合,通过单点登录(SSO)完成第一阶段整合。


② 实现上下文访问管理。通过收集关于用户上下文信息,应用程序上下文、设备上下文、位置和网络等信息进行综合判断,对于可能存在风险用户配合多因子身份认证进行二次验证。


③ 自适应的身份鉴别与授权。传统的身份认证与鉴权是一次验证通过后就获得了这次会话的完全信任。自适应的身份鉴别与授权是通过自适应的、基于上下文的风险来识别潜在威胁,在用户体验的整个过程中持续进行。


(7)数据安全管理系统

数据安全管理系统架构如图11所示。


11.png

图11 数据安全管理系统示意图

数据安全生命周期与数据安全技术的矩阵如图12所示。


12.png

图12 数据安全生命周期与数据安全技术的矩阵

数据防泄漏的主流方案如图13所示。


13.png

图13 数据防泄漏的主流方案

基于文件系统过滤加密和用户态控制的方案主要是在内核态的文件系统过滤驱动加密和用户态的扩散行为监控。


基于网络边界内容扫描的方案主要是参照Gartner提出的技术实现,针对静态数据(Data at rest)、网络传输数据和终端在用数据三类数据,借助内容检视和情境分析技术,如关键字、正则表达式、文档指纹、确切数据源(数据库指纹)、支持向量机等,执行基于策略和预定义规则的实时检测、过滤、隔离、阻止等响应处理。


基于物理隔离的管理方案主要是物理空间隔离和网络隔离。此方案的实施策略一般是先定业务,再定边界管理策略,最后逐步迁移。此方案的安全管控比较好,但对于流动性太高的业务不适用,成本高,边界管理压力大。


基于VDI远程桌面的管理方案因为其“看得见,用得上,拿不走”的特点,曾经被认为是数据防泄漏的终极解决方案。此方案的优点很多,比如随时随地切换工作环境,支持外部人员时性接入,运维效率高,数据外出管控比较简单。但实际应用中也存在很多的问题,比如设备与网络成本高,实施技术门槛高,边界管理压力大,对网络依赖比较高等。


(8)安全威胁检测系统

安全威胁检测系统需要针对前面所述的勒索攻击的3个途径、4个阶段、4类逃逸技术进行全面的检测。


通过零信任代理在终端侧针对其中的2类逃逸技术(使用无文件技术规避检测、使用隐写技术规避检测)进行威胁检测。


1、无文件技术逃逸的威胁检测

“无文件攻击”不代表真的没有文件,只是一种攻击策略,其出发点就是避免将恶意文件放在磁盘上,以逃避安全检测。所说的无文件,也未必是攻击全程无文件,而是其中的一部分采用了无文件攻击。


当前主要有三类无文件攻击技术:

① 脚本攻击:PowerShell、WMI 、VBA、JS、VBS、Linux Shell等类型的脚本攻击,它们会依托系统的一些白程序/工具,通过这些白程序/工具来在内存中执行脚本程序。


② 二级制shellcode攻击:利用本地工具,通过控制程序执行流让Shellcode获得执行机会,Shellcode在磁盘中没有文件跟它对应,只在内存中存在。


③ JAVA和PHP内存马攻击:由于服务器上主要运行Java和PHP等应用,攻击者还会重点利用Java内存马和PHP内存马来攻击服务器。


针对这3类无文件攻击技术,当前主要的检测技术包括内存分析、操作系统API HOOK检测。


内存分析的技术栈如图14所示。


14.png

图14 内存分析的技术栈

NDSS2020上有学者提出基于内存信息,捕获每个目标程序的动态行为构建异常检测模型,针对离地攻击设计并实现了一个无文件攻击检测的系统,如图15所示。


15.png

图15 无文件攻击检测的系统

可能被勒索病毒HOOK的操作系统API主要有限制程序功能函数、对话框函数、磁盘处理函数、文件处理函数、注册表处理函数、时间处理函数、进程函数。在文献[6]中总结了如下的windows操作系统API HOOK检测技术:


① 完整性检测:通过校验和算法对系统文件的完整性检查以发现那些通过修改系统文件来达到伪装隐藏的目的。比如代理DLL、修改目标文件API等。


②  执行路径分析法:检测某些关键系统函数执行时所用的指令个数,并与事先记录的数据比较,如果发现两者有明显差异,即判定这些函数执行了多余的代码,也就是被挂钩了。


③ 检测挂钩函数:通过检测call或jmp指令的跳转地址,实现修改IAT挂钩检测;通过比较IRP句柄与驱动程序的有效地址范围实现检测修改IRP的挂钩;通过查看内核指针KeServiceDescri-ptorTable所指向的系统服务描述表中的所有函数指针是否在ntoskrnl.exe模块的地址空间,用于检测修改SSDT的挂钩。


④ 交叉检查差异检测:比较操作系统不同层次API函数的查询结果,如果返回结果不一致,则说明可能存在API HOOK。


2、隐写技术逃逸的威胁检测

隐写技术逃逸主要利用隐蔽网络隧道,借助零信任网关可以在网关位置实现隐蔽网络隧道检测。几乎所有的勒索病毒都会采用隐蔽网络隧道与C&C服务器通信,因此检测这些隐蔽网络隧道对于及时发现和终止勒索攻击就是一个非常有效的手段。


隐蔽网络隧道的构建主要利用网络协议漏洞或者报文的时间特性来建立,其常见方式如下:

① 利用未用或保留字段建立隐蔽网络隧道。由于网络检测系统一般不会对保留字段和未用字段进行检查,因此网络攻击者可将要传递的信息隐蔽在报文中的未用字段或者保留字段中,例如:IP报头的TOS字段和DF字段均可用于隐蔽信息的传输。


② 利用扩展和填充字段建立隐蔽网络隧道。由于大部分网络协议都支持对报文的扩展,以满足网络通信中的特殊需求,而扩展方式却很少有明确的定义。因此,网络攻击者可以对某协议报文进行自行扩展,将信息作为填充内容隐蔽到填充字段中,从而建立隐蔽网络隧道。


③ 在协议规范允许下,对报文相关字段或者负载大小进行调制来隐蔽信息的传输,以此来建立网络隐蔽通道。


④ 利用报文的收发时间特性,通过调整正常数据包的发送接收时间来隐蔽信息,从而建立网络隐蔽通道。


⑤ 其方式建立隐蔽通道。例如,利用网络冲突检测机制或无线局域网的Traceback机制将信息隐蔽其中,这也是建立网络隐蔽通道的方式。


⑥ 加密隧道,包括网络层加密(如IPSec隧道);应用层加密(如HTTPS隧道、SSH隧道)。


恶意攻击利用网络隐蔽隧道隐藏攻击特征,绕过WAF、IPS、IDS等网络安全防护系统。但为了躲避安全防护措施,恶意攻击还针对网络隐蔽隧道的流量实施加密,从而使得采用传统的DPI进行特征匹配的安全防护技术失效。


识别隐蔽隧道恶意加密流量存在较大的挑战,其主要原因有三:第一,加密后的流量特征与明文的流量特征相比变化较大,无法通过传统攻击载荷匹配的方式进行检测识别;第二,恶意软件利用流量伪装技术将恶意流量特征转换为普通的正常流量特征,增加识别难度;第三,不同加密协议的加密方式和封装格式之间有着很大的差异,需要针对性考虑检测判别策略。在文献[9]中,作者对加密流量检测进行了系统化梳理,如图16所示。


16.png

图16 加密流量检测示意图

(9)安全风险监测系统

安全风险监测系统核心是资产识别发现、漏洞检测和风险计算。

按照Gartner提出的攻击面管理,安全风险监测系统主要包括如图17所示的能力支撑核心组件。


17.png

图17 安全风险监测系统能力支撑示意图

能力与工具的映射矩阵如图18所示。


18.png

图18 能力与工具的映射矩阵

3.3 部署模式


3.3.1 总体部署拓扑

总体部署拓扑如图19所示。


19.png

图19 总体部署拓扑示意图

3.3.2 OT网络部署拓扑

OT(运营技术 Operational Technology network)网络部署拓扑如图20所示。


20.png

图20  OT网络部署拓扑示意图

3.3.3 IIoT网络部署拓扑

IIoT(工业物联网 Industrial Internet of Things)网络部署拓扑如图21所示。

 

21.png

图21  IIoT网络部署拓扑示意图

3.3.4 PACS网络部署拓扑

PACS(影像存档与传输系统 Picture Archiving and Communication System)网络部署拓扑如图22所示。


22.png

图22 PACS网络部署拓扑示意图

04.

实现与验证

4.1 基于工业卫士改造成零信任代理(IH)


部署在工业上位机的工业卫士软件,改造成IH的功能框架如图23所示。其中IH部分是作为零信任代理IH需要增加实现的功能,其他工业卫士原有的功能可以根据情况裁剪瘦身。


23.png

图23 基于工业卫士改造成零信任代理(IH)的功能框架示意图

4.2 基于工业防火墙改造成零信任网关


工业防火墙的核心功能是工控通信协议解析与指令级访问控制,改造成零信任网关后的功能框架如图24所示。其中零信任网关部分是需要增加实现的功能,其他工业防火墙原有的功能可根据情况裁剪瘦身。

 

24.png

图24 基于工业防火墙改造成零信任网关的功能框架示意图

4.3 基于安全事件管理与运营平台改造成零信任安全管控平台


安全事件管理与运营平台是一个大数据安全分析平台,改造成零信任安全管控平台,大部分的基础功能和安全功能也是需要的,其功能框架如图25所示。

 

25.png

图25 基于安全事件管理与运营平台改造成零信任安全管控平台的功能框架示意图

05.

结束语


工控系统勒索攻击防御是亟需解决的课题。针对工控系统勒索攻击的攻击途径、攻击阶段和逃逸检测技术,本研究基于零信任网络安全架构,分析防御工控系统的勒索攻击所需要具备的安全能力、实现途径和部署模型,设计构建了工控系统的勒索防御体系。并结合作者在工控安全领域的实践经验,基于三款已有工控系统安全产品,本次研究实现与验证了改造成基于零信任防御工控勒索产品的方法,为工控系统安全提供了勒索防御保障,对工控系统勒索防御研究具有一定的参考价值。

参考文献略

来源:《工业信息安全》2023年第4期