1. 引言
工业控制系统已被广泛应用于国家关键信息基础设施领域,这些领域涵盖了电力、石油、石化、铁路以及水处理等多个行业,主要用于管理和控制关键生产设备的运行[1]。在电力行业,电力监控系统作为监视和控制电力生产的主要系统,其重要性与影响力愈发凸显。然而,随着该系统对信息网络技术的依赖日益加深,越来越多的恶意攻击者将其作为网络攻击的重要目标,使得电力监控系统面临前所未有的网络安全挑战。其中,高级持续性威胁(APT, Advanced Persistent Threat)攻击是一种典型且常见的安全威胁形式。APT攻击指的是攻击者利用高级技术手段,长期而隐秘地对特定目标进行网络攻击,攻击者会长时间潜伏,秘密地搜集信息,逐步渗透目标系统,直到达到其窃取信息、破坏系统或其他恶意目的。APT攻击给目标组织的网络和信息安全带来了严峻挑战,可能导致敏感信息泄露、系统瘫痪或其他严重后果。因此,防范和应对APT攻击也成为了电力监控系统安全防护的重要任务之一。
面对APT攻击的复杂性,入侵攻击模拟验证系统成为了重要的模拟和验证工具。它通过自动模拟从内部或外部对网络、系统和应用程序发起的广泛攻击行为,实现这些攻击的多样模拟,评估组织的安全防御能力和发现潜在的安全弱点。它不仅能模拟真实电力网络环境中可能发生的网络攻击场景,还能评估现有防御措施的有效性,并为网络安全技术人员提供实战训练的机会。通过这种方式,能够在不影响真实系统运行的情况下,全面地测试、评估和改进电力网络的安全性[2]。
然而,现下已经提出的入侵攻击模拟验证系统大多在设计上遵循了一些实施便捷的原则,基本上仅针对一些爆发性的漏洞和攻击。这种设计在注重搭建便利性的同时忽略了仿真性与实战性,没有在能复现爆发性漏洞的基础上,有针对性地复现出一些长期潜伏式APT攻击所需要的生命周期。
本文的工作集中在设计一个面向电力网络APT攻击的入侵攻击模拟验证系统,既能够满足爆发性漏洞的攻击模拟验证,也能复现出一些长期潜伏式的APT攻击。首先,本文提出了一种高真实性的入侵攻击模拟验证系统,通过虚拟化与仿真技术提高了仿真模拟的真实性和效率。其次,基于爆发性漏洞,在入侵攻击模拟验证系统中加入了多阶段潜伏式的APT攻击的生命周期与触发条件,提高了靶场的实战性。最后,基于乌克兰电网攻击事件,通过一系列模拟攻击测试其有效性。通过这项工作,本文旨在为电网的攻防模拟验证提供一个切实可行的解决方案,以应对日益严峻的网络安全挑战。
2. 相关工作
电网系统是一种非常特殊的系统,属于典型的信息物理融合系统,因此,它的安全问题涉及到了物理和信息两个方面的交叉,这并不同于计算机领域中的传统安全问题。本文所提出的自动化入侵攻击模拟验证系统中的靶场是一种仿真与模拟相结合的混合结构靶场,它在物理层上采用了工控虚拟化的技术,而在信息层上采用了一些实际的网络组件设备来模拟系统中的通信网络及节点,同时,还采用了仿真手段来模拟网络通信中的行为与流量。除此以外,本文所提出的自动化入侵攻击模拟验证系统的最大特点是支持长时期多阶段的APT攻击的攻防过程模拟,并能够通过在仿真攻防环境中对比防护前后攻击的效果来对防护措施进行有效性验证。
在网络安全的快速发展环境中,面对高级持续性威胁的复杂性,入侵攻击模拟验证系统成为了重要的工具,用于模拟攻击行为以评估和加强组织的防御能力。虽然入侵攻击模拟验证系统为网络安全领域带来了创新,但是,当这些系统专注于模拟单一类型的攻击时,它们的有效性和应用范围可能会受到限制。
一些入侵攻击模拟验证平台,如最初可能专注于钓鱼攻击模拟或特定的恶意软件传播策略的系统,展现了在特定领域内深度防御的价值。然而,APT攻击的特征在于其多阶段、多渠道和高度定制化的攻击策略,这要求防御措施能够覆盖广泛的攻击场景。专注于单一攻击类型的入侵攻击模拟验证系统可能无法全面模拟APT攻击者采取的多样化和复杂的入侵手段,如横向移动、持久化访问和数据窃取等。
Cymulate [3]和Picus Security [4]等平台虽然能够提供针对特定攻击向量的深入模拟,但如果这些系统不更新或扩展其模拟攻击的范围,就可能忽略了APT攻击中其他关键阶段的防御。同样,针对DDoS攻击或SQL注入的入侵攻击模拟验证的解决方案,如SafeBreach [5]和AttackIQ [6],虽然在它们各自的领域内效果显著,但面对需要综合多种技术和策略防御的APT攻击,这些单一性的解决方案可能就显得不足够全面。
此外,XM Cyber [7]等平台虽然专注于模拟网络内部的横向移动,但APT攻击的其他方面,如初步侵入、数据窃取和最终目标的实现,也同样重要。因此,如果入侵攻击模拟验证系统不能全面覆盖APT攻击的各个阶段,其在帮助组织构建全面防御策略方面的作用就会受到限制。
总之,虽然专注于单一攻击类型的入侵攻击模拟验证系统在其特定领域内可以提供深入的见解和加强防御,但APT攻击的多样性和复杂性要求防御策略更加全面和灵活。因此,为了更有效地对抗APT攻击,组织需要采用能够模拟和评估广泛攻击场景的综合性入侵攻击模拟验证解决方案,这样才能全面提高其安全防御能力,确保关键基础设施的安全。
3. 方案设计
3.1. 整体架构
在当今电力系统中,针对高级持续威胁(APT)的有效防护已成为网络安全的重要议题。APT攻击的复杂性和多阶段性要求我们设计出能够真实模拟其行为的环境。本文提出的混合结构靶场设计结合了物理层工控虚拟化与信息层实际网络组件,通过虚拟化技术将物理和信息层无缝融合,从而在仿真环境中实现高仿真度和高复杂性的攻击模拟。
传统APT攻击模拟系统往往依赖于单一仿真手段,无法有效地再现复杂的攻击场景。本文的设计通过引入SDN和SDWN技术,确保了网络架构的灵活性和可扩展性,使得网络拓扑和功能可以根据模拟需求进行动态调整。同时,网络功能虚拟化(NFV)提供了软硬件解耦的灵活性,支持网络设备和服务的快速部署与配置。
为了增强系统的实际应用能力,本文的系统设计还包括多层次的协作机制。资源保障层负责提供稳定的数据基础;核心业务层通过虚拟化实现业务场景的搭建和攻击流量的生成;应用层支持不同业务模块的扩展与集成;安全保障层则确保了从攻击模拟到防护验证的全流程安全性。这种设计不仅提升了APT攻击模拟的真实感,还通过系统的整体协作能力,确保了防护措施的有效验证。
入侵攻击模拟验证系统内部组件众多、结构复杂,其核心设计不仅在于内部攻防靶场的仿真,还在于面向APT攻击的防范措施的有效性验证。本文首先将其抽象为四个层次,分别是资源保障层、核心业务层、应用层和安全保障层[8]。如图1所示,这四个层次之间联系紧密,相互协作,共同支撑着系统的顺利运行。
Figure 1. The architecture diagram of the intrusion attack simulation and verification system
图1. 入侵攻击模拟验证系统整体架构图
其各层次功能介绍如下:
(1) 资源保障层:为了减少大量查询操作对数据库性能的负面影响,系统对数据库内存储的各种设备资料、知识库以及攻击与防御工具等信息进行了映射处理。同时,系统通过搜集电力监控系统的各种业务场景数据,并应用Hadoop、Spark等先进的分布式数据挖掘技术建立了数据仓库,以便对这些数据进行有效的整理、归类和储存。这种做法不仅确保了数据存储的灵活性和自主性,还大幅降低了数据库的工作负荷。通过这一层次的实施,为APT攻击的仿真提供了坚实的基础,既方便了APT攻击者进行信息搜集,也为APT防护者提供了关键的基础数据。
(2) 核心业务层:利用平台存储的各类数据资源,通过虚拟化技术实现了业务场景的搭建、业务流量与攻击流量的模拟。结合现有的技术战术知识库和攻防工具库,操作人员能够对模拟系统执行多种渗透测试,旨在评估系统的网络安全防护效能。该层是全局架构的核心,不管是对于业务流量的模拟还是对于攻击流量的模拟,都在完成系统设计的同时,完善了APT攻击的生命周期。业务流量为APT攻击者提供了侦察的基础,攻击流量根据攻防战术知识库,围绕APT攻击展开。
(3) 应用层:针对电力监控系统安全防护的实际工作需求,设计了多个应用模块,包括业务仿真、攻防仿真、漏洞验证、风险评估等,同时预留了可扩展接口。这允许根据业务发展的要求和变化,增加新的功能模块,例如设备状态监测统计、设备性能优化分析、系统网络安全态势感知等,以增强系统的灵活性和实用性。
(4) 安全保障层:汇集了大量电力监控系统配置信息,并进行了全面的网络安全防护建设。部署了漏洞扫描、安全审计、入侵防范等安全设备,从而确保了平台运行的安全。该层是APT攻击防御的主力,其中的安全审计、入侵检测、日志记录等都沿着APT攻击的生命周期对其进行了全面的记录。从某种角度上来说,安全保障层的工作也完善了APT攻击的生命周期,其各个组件的记录能够让安全人员更详细和具体地了解APT攻击的各个步骤。
入侵攻击模拟验证系统通过整合现有资源实现仿真,收集各类资源,实现入侵攻击模拟验证系统仿真的子系统,包括业务流量模拟子系统和攻击流量模拟子系统,这两个子系统的设计都将主要围绕APT攻击模拟展开。其搭建以工控网络与组件的虚拟化为基础,主要围绕核心业务层的子系统仿真展开。系统设计聚焦于对物理层的工控虚拟化和对核心业务层子系统的仿真设计。
3.2. 工控虚拟化
工控虚拟化是本系统的核心创新之一,包括网络虚拟化和组件虚拟化两个方面[9]。
在网络虚拟化的领域中,区分为网络拓扑结构的虚拟化以及网络功能的虚拟化两大类。对于网络拓扑结构的虚拟化,它主要通过软件定义网络(SDN)及软件定义无线网络(SDWN)实现控制层与数据层的分离策略,这种策略不仅促进了工控仿真平台的通信行为监控,也简化了安全策略的实施。而网络功能虚拟化(NFV),则是通过将网络功能(即虚拟网络功能,VNF)在商业硬件上以软件形式虚拟化,实现了网络设备的软硬件解耦,使得系统网络的新服务添加与网络功能的配置更为灵活。SDN与NFV技术的整合,为工业控制系统仿真平台的灵活部署与构建提供了有效解决方案,允许按需求对安全组件以及防护机制进行定制,进而提升网络的安全性与逼真度。
组件虚拟化主要针对控制设备和基础设施进行虚拟化处理,同时通过云管理平台进行统一的管理,以便于资源能够灵活地进行分配。通过虚拟化工控组件,可以在工控虚拟化平台上实现一个多用户、多任务、多场景并行运行的工控靶场,这为构建具有多种交互方式的工控靶场奠定了基础。
3.3. 核心子系统设计
3.3.1. 业务流量模拟子系统
业务流量模拟子系统是APT攻击仿真中的重要组成部分。其逻辑架构如图2所示,系统通过南向接口层、数据处理层、功能逻辑层和北向接口层的分层设计,提供了高效的流量模拟能力。具体来说,南向接口层实现了与其他系统的数据交互,提供了流量还原分析和多源数据汇聚功能。在数据处理层,通过流量生成和采集技术,系统能够模拟工业以太网、广域网和IPv6等复杂网络环境下的业务流量,为APT攻击的多阶段行为提供了真实的数据支撑[10]。
Figure 2. The logical architecture of the business traffic simulation subsystem
图2. 业务流量模拟子系统逻辑架构
四个层次的功能如下:
(1) 南向接口层通过流量还原分析、多源数据汇聚以及恶意行为检测等接口,实现与其他应用系统的数据交互。当APT攻击者进行到侦察阶段时,会在该层留下多种流量痕迹。
(2) 数据处理层负责处理系统运行中的数据存取、分析和计算,包括流量生成、采集、导入及重组等关键逻辑。进行APT攻击时,该层可以一定程度地根据系统中的数据进行APT流量生成。
(3) 功能逻辑层建立在数据处理之上,提供流量处理和协议指纹匹配等业务逻辑支撑。
(4) 北向接口层提供可视化的人机交互界面,通过软件配置、任务和规则管理等接口与后端系统对接,为用户操作提供入口。
3.3.2. 攻击流量模拟子系统
攻击流量模拟子系统旨在通过模拟多种网络攻击场景,提供全面的安全性评估支持。系统整合了丰富的攻击数据集和全球源IP地址模块,能够生成超过10种攻击类型的流量,如DDoS、ARP攻击、恶意软件传播等。系统设计的核心在于攻击流量的灵活性和扩展性,通过自定义攻击流量回放功能,用户可以根据特定实验需求进行个性化的攻击模拟。这种设计不仅提升了系统的仿真能力,还为复杂的APT攻击防护策略提供了全面的验证平台。
其逻辑架构如图3所示,这种设计旨在提供一套完整的解决方案,以支持复杂的安全性评估和检测需求。
攻击流量模拟子系统装备了全面的攻击数据集和全球源IP地址模块等资源,以支持各类攻击流量的模拟。本系统可以依据特定的攻击数据集识别所需的攻击种类及数据,并借助攻击流量回放功能进行攻击流量的个性化修改和整合。之后,通过攻击流量发射模块实施攻击。特别是在执行大规模的攻击流量实验,如模拟分布式拒绝服务(DDoS)攻击和僵尸网络攻击时,系统将修改数据包的源IP地址,使用全球源IP地址功能来仿真全球范围内的网络攻击活动。
Figure 3. The logical architecture of the attack traffic simulation subsystem
图3. 攻击流量模拟子系统逻辑架构
4. APT攻击模拟及防范措施的有效性验证
4.1. APT攻击特点
APT攻击是一种高级持续性威胁,指攻击者使用高级手段长期秘密地对特定目标进行网络攻击。APT攻击的特点包括针对性强、隐蔽性高、持久性和复杂性。攻击者通常有明确的攻击目标,如政府机构、大型企业等,他们会长时间潜伏,搜集信息,逐步渗透,直到达到其窃取信息、破坏系统或其他恶意目的。APT攻击涉及多个阶段,包括侦察、入侵、横向移动、数据窃取和持久化等,给目标组织的信息安全带来严峻挑战[11]。
APT攻击最大的特点就是多阶段多步骤,其基本攻击步骤分析如下:
第一阶段:侦察,长时间反复分析攻击目标,这一阶段流量数据量较多,会出现大量发送至相同IP地址的流量。
第二阶段:入侵,建立立足点,通过诸如暴力破解、钓鱼软件和0 day漏洞等多种攻击技术手段突破系统防御,进入目标计算机并建立立足点,目标端口多为固定常用端口,正常流量多使用动态端口。
第三阶段:横向移动,横向渗透,攻击流量持续时间较长,流量数据量较少。
第四阶段:窃取信息或破坏系统,攻击者会将数据发送到具有不同IP地址的服务器,流量数据量较少。
第五阶段:继续攻击或者清除攻击痕迹。
4.2. APT攻防场景模拟与防御
在高真实性仿真技术的支持下,本文提出的系统能够通过真实数据的仿真,验证防护措施在应对不同类型APT攻击时的效果。通过详细的实验数据分析,本章展示了系统在防护策略优化中的作用,特别是在应对新型复杂攻击方面的表现。实验结果表明,系统能够在高复杂性攻击场景下保持高仿真度,并有效验证防护策略的适应性和有效性。
区别于其他仅针对单一攻击的入侵攻击模拟验证系统,本系统设计过程重点考虑了上述多阶段APT攻击等潜伏式攻击,不仅在基础设计中完善了APT攻击的生命周期,还设计了面向APT攻击的实战场景,如图4为该场景的逻辑示意图。
Figure 4. Schematic diagram of the actual combat scenario of a power monitoring system for APT attacks
图4. 面向APT攻击的电力监控系统实战场景逻辑示意图
APT攻击在系统中的攻击阶段可作如下分析:
(1) 办公区与便携设备等外部设备可供攻击者进行长时间的反复分析,本靶场中模拟的电力监控系统业务流量较大,对于这一阶段来说是很好的隐蔽条件。
(2) 电力监控系统维护人员在工作的过程中可能因为诸如暴力破解、钓鱼软件等多种手段落入攻击者的陷阱中,攻击者可建立立足点。
(3) 靶场的办公区与监控主机相连,攻击者可根据立足点进行横向渗透,攻进监控主机,从而控制电力监控系统。
(4) 监控主机属于电力网络信息层,与物理层设备紧密相连,攻击者可以根据这一条件对物理电力设备进行信息窃取和系统破坏。
(5) 最后,攻击者可能清除攻击痕迹后进行逃逸。
针对APT攻击,系统可做的防御措施分析如下:
(1) 外部设备和办公区域,考虑到它们通常是攻击者用于初步侵入和侦察的主要目标,可以增加对这些区域的监控和安全审计。例如,部署网络行为分析工具来识别异常数据流和潜在的数据泄露,以及使用终端检测和响应(EDR)解决方案来监控和防御恶意软件和高级威胁。
(2) 由于电力监控系统维护人员可能因不同的社会工程手段(如暴力破解、钓鱼攻击)而成为攻击目标,重要的是加强员工的安全意识教育,指导他们识别和回避这些攻击手段,比如定期进行安全培训和模拟钓鱼攻击练习。
(3) 在靶场的办公区与监控主机之间,部署内网威胁检测系统来识别横向移动尝试和异常的网络连接,帮助快速发现并阻断攻击者的渗透尝试。同时,强化主机级别的安全措施,如多因素认证和最小权限原则,减少攻击者控制监控主机的机会。
(4) 对于连接电力网络信息层和物理层设备的安全防护,可以采用网络分段和隔离策略,限制不同网络层次之间的访问权限,以防止攻击者从信息层向物理层设备扩散。同时,实施设备完整性监测和异常检测系统,确保物理设备的安全运行。
(5) 针对攻击者可能采取的清除攻击痕迹行为,入侵攻击模拟验证系统应包括日志收集和分析能力,以便在攻击者尝试清理痕迹之前捕获关键证据。此外,实施出口流量监控和数据丢失预防(DLP)策略,以识别和阻止潜在的数据泄露尝试。
入侵攻击模拟验证系统在模拟这些攻击阶段时,不仅可以帮助识别系统中的薄弱环节,而且还能测试和验证现有安全措施的有效性。通过这种方式,组织可以更好地理解APT攻击的生命周期,并在实战场景中优化和强化其防御策略。
5. 界面展示
根据上述的搭建思路,入侵攻击模拟验证系统由数据虚拟化物理层与仿真信息层组成,系统的部分相关截图如下所示。图5为监控主站界面图,其中包含了监控系统的各项管理功能和数据展示,图上可以看到来自物理层的各项数据。
Figure 5. Supervisory main station interface
图5. 监控主站界面
图6为工程师站的界面,在这个界面当中,工程师可以对相关数据和配置进行设置。
Figure 6. Engineer station interface
图6. 工程师站界面
图7为使用PLC仿真的测控保护装置,图上可以看到该装置的状态、网络地址等相关信息。
Figure 7. Simulated measurement, control, and protection device
图7. 仿真的测控保护装置
6. 应用举例
在本章中,利用BlackEnergy工具,采用2016年乌克兰停电事件的攻击手段,在入侵攻击模拟验证系统中进行了一次攻防模拟。
6.1. 环境准备
在进行模拟攻击之前,首先对靶机系统和攻击机系统以及相关工具做一个简要介绍,如下表1所示。
Table 1. Introduction to experimental preparation
表1. 实验准备介绍
类别 |
系统/名称 |
简介 |
靶机(上位机/办公机) |
Windows 10 |
/ |
攻击机 |
Kali 2023 [12] |
/ |
攻击工具1 |
BlackEnergy [13] |
BlackEnergy是一个基于HTTP的僵尸网络,其主要功能是执行DDoS攻击。不同于通常使用IRC进行通信的BOT,这种僵尸网络中的bot不通过IRC交互。同时,与传统的基于IRC的方式不同,从这个服务器上没有直接发起攻击的迹象。这是一个体积小(小于50KB)且简单的Windows平台程序。 |
攻击工具2 |
Killdisk [14] |
Killdisk是攻击者部署的一个组件,其核心目标在于删除证据和损坏系统。该组件在激活后将对文件进行遍历式删除,同时对磁盘的主引导记录(MBR)进行覆写并破坏文件,最终导致计算机被强制关机。 |
漏洞依据 |
CVE-2014-4114 [15]漏洞 |
此漏洞对目前广泛使用的各个版本的Windows系统均有影响,其传播途径主要是通过将恶意代码嵌入Office文档系列,并通过电子邮件附件形式散播。已知受攻击的载体主要是Office 2007系列的组件。这一漏洞属于逻辑类型,关键的触发点是Office组件在加载Ole对象时,该Ole对象能够实现远程下载并通过Ole包裹(Package)进行加载。当样本被执行后,它会下载并运行一个病毒文件,即所谓的BlackEnergy病毒[16]。 |
6.2. 模拟攻击与分析
本研究以2015年发生在乌克兰的电网攻击事件为案例,探讨了攻击者如何利用BlackEnergy恶意软件,通过鱼叉式钓鱼邮件等方式发起攻击。攻击过程开始于将BlackEnergy植入至跳板机,随后利用该跳板机作为据点进行横向移动,逐步渗透至控制监控系统和关键设备的核心主机。借助由BlackEnergy生成的庞大僵尸网络和其定向传播的能力,攻击者得以掌控电网系统,执行断电操作,造成大范围停电事件。进一步地,攻击者通过破坏MBR和部分磁盘扇区,阻止系统重启(限于电源自检和硬盘启动),清除系统日志以增加事后分析的难度,并通过覆盖文档和其他关键文件来造成数据损失。这些攻击手段不仅大大增加了系统恢复的难度,也使操作人员在失去了上层系统的故障反馈和显示功能后,面临恢复工作的“盲操作”。下图8展示了模拟攻击的核心流程:
下图的模拟攻击流程如下:
攻击者通过利用CVE-2014-4114漏洞,通过钓鱼邮件向办公区、便携设备及其他终端三条路径的“跳板机”植入Black-Energy软件;
(1) 攻击者通过“跳板机”渗透进入系统的关键监控主机;
(2) 攻击者获得关键监控主机的控制能力,下达断电指令导致大面积停电;
(3) 攻击者采用Killdisk工具覆盖监控主机的MBR和部分扇区,导致系统重启后无法加点自检和磁盘引导;
(4) 攻击者进行收尾工作,清除系统日志,及时逃逸。
Figure 8. Diagram of simulated attack process
图8. 模拟攻击过程图
除了正面攻击以外,攻击者还可以对电力客服中心进行DDoS攻击,导致中心无法准确判断停电区域,无法及时处理事件、开启备用电源或疏散人群,导致了停电区域工作的大面积瘫痪,与正面攻击相结合,可以导致更为严重的后果,本文中仅讨论电力监控系统,并不考虑其他工作单位,因此此处DDoS攻击只做理论分析,并未进行确切举例。
在这个应用的过程中,安全人员不仅能够了解CVE-2014-4114漏洞的原理,还可以学习电力监控系统的架构与配置,并验证现有安全防护措施是否有效,以便将来更好防范相关攻击。
7. 总结
建立面向电力监控系统APT攻击的入侵攻击模拟验证系统是一项重要的基础性工作。利用入侵攻击模拟验证系统,研究人员可以分析系统的网络安全问题、评估系统的安全风险,选择适合的保障措施来确保电力监控系统的网络安全。本文首先分析了当前电力监控系统所面临的安全威胁,然后列举了国内外相关工作的优点与弊端,提出了一种面向电力监控系统APT攻击的入侵攻击模拟验证系统设计方案,最后,本文在此系统的基础上对基于CVE-2014-4114漏洞的模拟攻击进行应用举例,展示了系统的可行性和扩展性。