研究人员发现 “震网” 病毒前的 “fast16” 恶意软件,目标为工程软件
- 浏览次数 24
- 喜欢 0
HackerNews 编译,转载请注明出处:
网络安全研究人员发现了一种新的基于 Lua 的恶意软件,其出现时间比臭名昭著的震网(Stuxnet)蠕虫病毒还要早数年。震网病毒旨在通过破坏铀浓缩离心机来破坏伊朗的核计划。
根据 SentinelOne 发布的一份新报告,这个此前未被记录的网络破坏框架可追溯到 2005 年,主要针对高精度计算软件,以篡改计算结果。它被代号为 fast16。
研究人员维塔利・卡姆卢克(Vitaly Kamluk)和胡安・安德烈斯・格雷罗 - 萨阿德(Juan Andrés Guerrero - Saade)在本周发布的一份详尽报告中指出:“通过将此有效载荷与自我传播机制相结合,攻击者旨在使整个设施产生同等的不准确计算结果。”
据估计,fast16 至少比震网病毒早出现五年,震网病毒是世界上已知的首个用于破坏行动的数字武器。震网病毒通常被认为是美国和以色列所为,后来它成为 Duqu 信息窃取 rootkit 的架构基础,而 fast16 似乎出现得更早。
它也早于 2012 年 5 月发现的另一种复杂恶意软件 “火焰”(Flame,又名 Flamer 和 Skywiper)最早的已知样本,“火焰” 恶意软件融入了 Lua 虚拟机以实现其目标。这一发现使 fast16 成为首款嵌入 Lua 引擎的 Windows 恶意软件。
SentinelOne 表示,在识别出一个名为 “svcmgmt.exe” 的文件后有了这一发现。乍一看,该文件似乎是一个通用的控制台模式服务包装器。根据 VirusTotal 的数据,该样本的文件创建时间戳为 2005 年 8 月 30 日,十多年后的 2016 年 10 月 8 日被上传至 VirusTotal。
然而,深入调查发现其中嵌入了 Lua 5.0 虚拟机和一个加密的字节码容器,以及直接绑定到 Windows NT 文件系统、注册表、服务控制和网络应用程序编程接口(API)的各种其他模块。
该植入程序的核心逻辑存在于 Lua 字节码中,二进制文件还通过 PDB 路径引用了一个内核驱动程序(“fast16.sys”),该驱动程序的创建日期为 2005 年 7 月 19 日,负责在从磁盘读取可执行代码时进行拦截和修改。值得注意的是,该驱动程序无法在 Windows 7 及更高版本的系统上运行。
SentinelOne 称,在一个名为 “drv_list.txt” 的文本文件中发现了对 “fast16” 字符串的引用,这一发现可能暗示该工具的来源。该文件包含一份用于高级持续性威胁(APT)攻击的驱动程序列表。这个近 250KB 的文件在九年前被一个神秘的黑客组织泄露。
在 2016 年和 2017 年,自称 “影子经纪人”(The Shadow Brokers)的组织公布了大量据称从 “方程式组织”(Equation Group)窃取的数据,“方程式组织” 是一个与美国国家安全局(NSA)疑似有关联的高级持续性威胁组织。这些数据包括一系列绰号为 “迷失在翻译中”(Lost in Translation)的黑客工具和漏洞利用程序,上述文本文件就是其中之一。
SentinelOne 表示:“svcmgmt.exe 中的字符串在此次调查中提供了关键的取证线索。PDB 路径将 2017 年泄露的美国国家安全局操作员使用的冲突消解签名,与 2005 年编译的一个多模式 Lua 驱动的‘载体’模块联系起来,并最终与它隐秘的有效载荷 —— 一个为精确破坏而设计的内核驱动联系起来。”
“svcmgmt.exe” 被描述为一个 “高度适应性的载体模块”,它可以根据传递给它的命令行参数改变行为,使其能够作为 Windows 服务运行或执行 Lua 代码。它带有三个不同的有效载荷:用于处理配置、传播和协调逻辑的 Lua 字节码,一个辅助的 ConnotifyDLL(“svcmgmt.dll”),以及 “fast16.sys” 内核驱动程序。
具体而言,它旨在解析配置,将自身提升为服务,可选择部署内核植入程序,并启动一个服务控制管理器(SCM)小程序,扫描网络服务器,并将恶意软件传播到其他使用弱密码或默认密码的 Windows 2000/XP 环境。
这里值得一提的一个重要方面是,只有在手动强制传播,或者通过扫描 Windows 注册表数据库中相关注册表项未在系统中发现常见安全产品时,传播才会发生。它明确检查的一些安全工具来自 Agnitum、F - Secure、卡巴斯基、迈克菲、微软、赛门铁克、Sygate Technologies 和趋势科技。
Sygate Technologies 的存在是该样本开发于 21 世纪中期的另一个指标,因为该公司在 2005 年 8 月被赛门铁克(现属博通)收购,其产品的销售和支持在当年 11 月正式终止。
SentinelOne 表示:“对于这个时代的工具来说,这种对环境的感知水平值得关注。虽然产品列表可能看起来不全面,但它可能反映了操作人员预期在其目标网络中存在的产品,这些产品的检测技术会威胁到秘密行动的隐蔽性。”
另一方面,每当系统使用远程访问服务(RAS)建立新的网络连接时,就会调用 ConnotifyDLL,并将远程和本地连接名称写入一个命名管道(“\.\pipe\p577”)。
然而,负责精确破坏的是驱动程序,它针对使用英特尔 C/C++ 编译器编译的可执行文件,通过恶意代码注入执行基于规则的补丁并劫持执行流程。其中一个模块能够破坏数学计算,特别是针对土木工程、物理和物理过程模拟中使用的工具。
SentinelOne 解释说:“通过在现实世界的计算中引入微小但系统的错误,该框架可能会破坏或延缓科学研究项目,随着时间推移降低工程系统性能,甚至可能导致灾难性破坏。”
“通过将相对稳定的执行包装器与加密的、特定任务的有效载荷分离,开发者创建了一个可重复使用、分区的框架,他们可以使其适应不同的目标环境和操作目标,同时在不同行动中保持外部载体二进制文件基本不变。”
基于对补丁引擎中定义的 101 条规则的分析,并将其与 21 世纪中期使用的软件进行匹配,评估认为三个高精度工程和模拟套件可能是攻击目标:LS - DYNA 970、PKPM 和 MOHID 水动力建模平台。
LS - DYNA 现已成为 Ansys 套件的一部分,是一款通用的多物理场模拟软件包,用于模拟碰撞、冲击和爆炸。2024 年 9 月,科学与国际安全研究所(ISIS)发布了一份报告,基于对开源科学和工程文献中 157 篇学术出版物的研究,详细说明了伊朗可能使用 LS - DYNA 等计算机建模软件进行核武器开发。
考虑到 2010 年 6 月伊朗纳坦兹的铀浓缩设施遭到震网病毒攻击后,其核计划据说遭受了重大破坏,这一系列证据具有重要意义。此外,赛门铁克在 2013 年 2 月披露了震网病毒的早期版本,该版本于 2007 年 11 月被用于攻击伊朗核计划,有证据表明其早在 2005 年 11 月就已在开发中。
赛门铁克当时指出:“震网 0.5 是已知被分析的最古老的震网版本。震网 0.5 包含一种替代攻击策略,关闭伊朗纳坦兹铀浓缩设施内的阀门,这将对离心机和整个铀浓缩系统造成严重破坏。”
SentinelOne 表示,综合来看,这一最新发现 “迫使我们重新评估” 秘密网络破坏行动的历史发展时间表,并补充说这表明针对物理目标的国家支持的网络破坏工具在 21 世纪中期已完全开发并部署。
研究人员总结道:“在高级持续性威胁(APT)的演变大背景下,fast16 填补了早期基本无形的开发项目与后来记录更为广泛的基于 Lua 和 LuaJIT 的工具包之间的空白。它是理解先进行为者如何看待长期植入、破坏以及一个国家通过软件重塑物理世界能力的参考点。fast16 是一种新型治国方略的无声先驱,直到今天它的隐蔽性依然成功。”
消息来源:thehackernews.com;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文