人工智能黑客--黑客如何在网络攻击中使用人工智能

立即阅读
我们利用人工智能进行网站翻译,虽然我们力求准确,但不一定总是 100%精确。感谢您的理解。

防范针对罗克韦尔自动化 PLC 的远程攻击 

OPSWAT
分享此贴

我们很高兴能推出一系列技术分析博客,重点介绍可以利用我们的先进威胁检测技术识别和修复的各种 CVE(常见漏洞和暴露)。所有研究均由参加OPSWAT 网络安全奖学金项目的研究生完成,该项目于 2023 年 12 月启动。 

胡志明科学大学研究生 Luan Pham 和 Viet Tran
学生参加了OPSWAT 研究金计划。

在本博客中,我们将介绍罗克韦尔 Micrologix CVE-2017-14469 以及企业如何抵御 CVE- 2017-14469 利用攻击。

罗克韦尔自动化 MicroLogix 1400 控制器 

PLC (可编程逻辑控制器)是一种专为控制工业制造流程而设计的计算机。它用于关键基础设施领域,如装配线、机器监控、过程控制等。罗克韦尔自动化 MicroLogix 1400 控制器是一种模块化、可扩展的 PLC,具有高 I/O 数量、快速高速计数器和增强的网络支持功能,因此适用于各种应用。

罗克韦尔自动化 MicroLogix 1400 控制器的产品照片
罗克韦尔自动化 MicroLogix 1400 控制器

14469

说明

在罗克韦尔自动化 MicroLogix 1400 系列 B FRN 21.2 及更早版本中存在一个漏洞,允许攻击者读取和写入/改写设备上的敏感数据。包含命令的未经验证的特制数据包会修改用户定义的故障例程编号,导致设备意外停止执行。

图解说明了攻击者以 MicroLogix 1400 设备为目标的安全情景,可能导致多种结果
影响 

国家漏洞数据库(NVD)已将此漏洞列为 "严重",并给出了最高的 CVSS(通用漏洞评分系统)分数。它的影响可能会严重影响设备的保密性、完整性和可用性,而不需要任何额外的身份验证。系统的可用性至关重要,尤其是在关键基础设施系统中,任何中断或停机都可能导致巨大的经济损失甚至实体损坏。这种 CVE 可通过触发控制器内的 "系统故障 "导致 PLC 功能停止,从而造成关键基础设施系统中断的风险。 

网络安全漏洞 CVE-2017-14469 的严重性评级,详细列出了 NIST NVD 和 Talos 的 CVSS 分数以及关键基础分数
NIST NVD 上的 CVE-2017-14469 信息 

脆弱性分析

什么是故障和故障程序?

故障的概念与程序设计中的异常非常相似。当故障发生时,指令的执行会停止,从而导致设备进入故障状态。故障可分为两类:用户故障和非用户故障。  

清除故障的机制有两种:通过循环控制器电源自动清除故障,或通过用户故障例程手动清除故障。CVE-2017-14469 与第二种机制有关。为防止系统因用户故障而意外关闭或停止执行,定义了一个用户故障例程,以根据故障编号处理分配的故障,并在相应故障发生时执行。如果没有处理故障的例程,设备将停止执行并显示故障编号。设备正常运行时,用户故障例程的值设置为 0x00,只能在 0x03 至 0xFF 范围内配置,以便进行故障处理。

流程图,解释处理设备故障的程序,包括故障检测、例行检查和显示错误代码
利用用户故障例程清除用户故障的机制。
罗克韦尔自动化 MicroLogix 1400 运行模式

Rockwell Automation MicroLogix 1400 有三个模式开关位置:"编程"、"远程 "和 "运行"。编程 "和 "远程 "模式都允许向设备下载程序,同时也接受和处理传入的请求。但在运行模式下,设备只接受受限请求。在此漏洞中,如果设备处于运行模式,则无法利用此漏洞。

计划
  • 空闲模式,用于下载和编辑程序
  • 响应通信端口上的信息
  • 停止执行,无输出
远程
  • 允许软件会话控制设备
  • 响应通信端口上的信息
  • 正常执行和输出
运行
  • 连续循环执行程序
  • 只响应受限信息
CVE-2017-14469 如何工作

设备通过带有 PCCC 扩展的 CIP(通用Industrial 协议)进行通信。CIP 协议建立在以太网/IPIndustrial 协议)之上。数据包结构如下图所示:

用于工业协议通信的以太网/IP 数据包和 CIP 对象的结构示意图
利用用户故障例程清除用户故障的机制。

从上图可以看出,没有指定用于验证的字段。这带来了巨大的挑战,因为设备无法区分攻击者的请求和用户的正常流量。 

通常情况下,操作员可通过控制软件监控和更新设备配置。为了与设备通信,软件 会发送一个相应的请求,在 CIP PCCC 对象中填写受保护的键入逻辑写入或读取命令。在 CIP PCCC 协议格式中,命令由其命令代码和功能代码标识。 

指令代码
功能代码
说明
0x0F0800更改模式
0x0F0xAA受保护的键入式逻辑写入,有三个地址字段
0x0F0xA2带三个地址字段的受保护键入逻辑读数

受保护的键入逻辑写入命令用于写入敏感文件,如状态文件、位文件、计数器文件和设备的其他配置。  

设备在 CIP 数据包中使用三个地址字段来标识读写位置:文件类型、文件编号和元素编号。下面是一些示例值,用于识别受命令影响的配置文件位置: 

文件类型
文件编号
元素编号
说明
084000200x1d状态文件 - 用户故障例程编号
084000200060状态文件 - 主要错误代码
084000200050状态文件 - 主要错误代码

但是,设备在处理请求时缺乏输入验证;写入命令中发送的数据未经验证,允许设置为任何无效值。 

该漏洞主要由两个原因造成。首先,设备无法验证传入请求,使攻击者能够发送未经验证的请求来修改敏感设置。其次,设备对传入数据的验证不正确,导致设置变为无效状态。 

要成功利用该漏洞,攻击者需要发送恶意请求,滥用受保护的键入逻辑写入命令,用无效值(如 0x01 或 0x02)覆盖状态文件中的故障例程编号。当故障例程编号被无效值覆盖,设备通过另一个 CIP 数据包切换到运行模式时,就会触发故障并停止执行。 

漏洞利用

攻击可分为 4 个步骤。

  1. 通过以太网/IP 与设备建立连接,获取会话句柄。
  2. 发送恶意请求,覆盖故障例程编号。
  3. 伪造恶意 CIP 数据包,将 PLC 切换回运行模式,从而触发故障。
  4. 设备遇到故障并停止执行。
用于套接字连接、会话注册和发送命令以更改设备故障例程和 CPU 状态的 python 代码片段,标记为漏洞利用
代码显示了利用该漏洞的步骤功能。 
步骤1

要与设备通信,攻击者必须通过与设备注册会话来启动连接,以获取会话句柄并用于持续通信。下面的代码演示了一个标准的会话注册请求:

用原始字节数据注册会话、通过套接字发送数据并解码会话句柄响应的 python 函数
步骤2

随后,攻击者会使用先前获得的会话句柄制作一个请求,并将包含受保护键入逻辑写入命令的有效载荷封装到 CIP 数据包中,以覆盖故障例程编号。

python 代码定义了通过网络套接字发送指令并接收响应的函数,是网络通信脚本的一部分
步骤3

最后一步是发送另一个 CIP 数据包,将设备切换到运行模式并触发故障。

python 函数,通过发送特定的命令有效载荷,将设备的 CPU 状态设置为运行或编程模式
步骤4

如图所示,PLC 停止执行,漏洞被成功利用。

描述系统用户界面和罗克韦尔自动化 MicroLogix 1400 在正常条件下的运行情况
系统在正常条件下运行
利用漏洞后系统用户界面和 Rockwell Automation MicroLogix 1400 故障的描述
利用此漏洞后系统瘫痪

补救措施

OPSWATICS 安全产品专为抵御此类攻击而设计。 MetaDefender OT Security它是一种人工智能驱动的威胁检测和智能工具,可检测攻击者的任何异常请求,使管理员能够识别潜在威胁。 

MetaDefender OT Security 具有以下功能,可改善 OT 环境的安全状况: 

  1. 利用智能资产剖析快速发现和建立资产清单
  2. 主动和被动监控威胁和异常情况
  3. 具有集中自动补丁功能的远程补丁管理
  4. 通过全面的可定制仪表板管理结构化和简化的风险警报工作流程
  5. 全球、地区和行业监管合规报告
仪表板显示罗克韦尔自动化 MicroLogix 1400 PLC 设备的详细漏洞评估,包括 CVE 列表和 CVSS 分数

此外,MetaDefender OT Security 还可以与 MetaDefender Industrial Firewall以防止恶意请求影响OT Security 检测到的设备。MetaDefender Industrial Firewall 是保护关键任务 PLC、VFD、RTU 和其他工业资产的最后一道防线。它应用高度细粒度的设备访问策略并强制执行设备访问区域,确保未经授权的访问或更改不会影响关键硬件。  

这两者结合在一起就形成了一个无缝的 IDPS(入侵检测和防御系统),可有效检测和防止任何异常网络连接、请求、通信等对网络造成影响。

MetaDefender OT Security 通过其资产可视性和强大的威胁检测功能,为关键基础设施提供重要保护。除了技术实力之外,OPSWAT 还为热衷于网络安全的个人提供了令人兴奋的工作机会。加入我们,塑造安全的未来,保护最重要的东西。在OPSWAT 探索各种职位和有影响力的项目,您的专业知识将为您带来切实的改变。让我们一起保护世界上最重要的系统。

通过OPSWAT 了解最新信息!

立即注册,即可收到公司的最新动态、 故事、活动信息等。