再看 Olympic Destroyer:一枚被移植的 Lazarus 指纹,给今天的 ARTEX 争议留下了什么?
原创
messfree
messfree
MessFreeSecurity
2026年10月9日 10:36
北京
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
2018 年平昌冬奥会开幕式期间,Olympic Destroyer 破坏赛事相关 IT 环境。样本中一枚与 BlueNoroff/Lazarus 完全一致的构建指纹,把调查视线推向朝鲜;Kaspersky 随后发现,这枚指纹与二进制的真实编译特征互相冲突。美国司法部后来指控行动者事先研究并模仿 Lazarus,英国政府则以高置信度把行动归于俄罗斯 GRU 第 74455 部队。
2018 年的 Olympic Destroyer 与上一篇《CrowdStrike 韩国金融事件报告能排除“栽赃”吗?》指向同一个方法问题:一组高度指向某个主体的材料,究竟是行动自然留下的痕迹,还是经过设计的调查叙事?
Olympic Destroyer 留下三点经验:高权重归因线索也可能经过设计;最终字段需要回到生成过程核验;识别误导线索和识别真实主体属于两条证据链。用于 ARTEX 时,这三点会提高开放目录、中文提示、自述和会话材料的核验门槛。现有公开材料尚未说明工作区是否经过刻意布置。
OPSEC 是 Operational Security,也就是行动安全:操作者如何切断“具体操作—基础设施—账号—人员—组织”之间的关联。比隐藏身份更主动的做法,是故意制造会把调查方向带向别人的信号。隐藏身份是在减少真实信号;归因误导则是在制造醒目的误导性信号,改变调查者给证据分配权重的方式。
证据边界: Olympic Destroyer 部分使用 Kaspersky 与 Cisco Talos 的技术研究、美国司法部 2020 年起诉书和英国政府公开归因。Kaspersky 的技术证据止于确认 Lazarus 工件遭到伪造,GRU 单位级归因来自后续执法与政府情报评估。美国司法部文件属于刑事指控;英国 NCSC 给出高置信度政府归因。ARTEX 部分的分析范围限于 CrowdStrike 公开博客、韩国监管通报和上一篇核对过的公开材料。银行原始日志、开放目录原件、主机镜像、代理认证记录及厂商内部取证材料均未公开。
先回到 2018 年:一次把归因模型当作攻击面的行动
公开归因从一开始就存在分歧
攻击发生后,公开判断分为俄罗斯、中国和朝鲜等多个方向。Talos 在 2018 年 2 月 26 日把公开技术证据评为相互矛盾,归因保持开放。Kaspersky:OlympicDestroyer is here to trick the industry · Talos:Who Wasn’t Responsible for Olympic Destroyer?
公开记录显示,攻击者投放了多组可被解释为不同组织痕迹的材料,依赖样本相似性的研究因此难以稳定收敛。
“100% 匹配”发生在 Rich Header
完全一致的部分是 Olympic Destroyer 擦除组件与一份 BlueNoroff/Lazarus 样本的 Rich Header。Rich Header 是微软工具链写入 PE 文件的构建元数据,范围涉及编译器、链接器和参与构建的对象数量。
Kaspersky 进一步发现,这个 Header 描述的是 Visual Studio 6 风格构建环境,二进制主体却引用了当时不存在的 mscoree.dll,启动代码又符合 Visual Studio 2010。两组事实不可能由一次正常编译同时产生。研究人员因此判断:Header 被从 BlueNoroff 样本复制过来,与 Olympic Destroyer 的真实构建过程无关。Kaspersky:The devil’s in the Rich header
图 1|两份样本的 MZ DOS 与 Rich Header 完全一致。一致范围局限于构建元数据,并未覆盖恶意代码主体。来源:Kaspersky 原始技术报告。
两个家族都以 4096 字节块覆写文件,具体流程存在差异,Kaspersky 因此把它列为弱连接。Olympic Destroyer 还包含基于开源 Mimikatz 的组件,Talos 也发现样本保留了未使用的 EternalBlue 结构。开源代码、公开 PoC 和已发表分析能够被不同开发者复用,代码相似性的归因权重还取决于实现是否公开可得。
图 2|左侧为 Olympic Destroyer,右侧为 BlueNoroff。二者都以 4096 字节为覆写单位,但具体实现不同,Kaspersky 将其评为弱连接。来源:Kaspersky 原始技术报告。
技术研究确认伪造工件,GRU 归因来自后续调查
Kaspersky 当时把活动簇命名为 Hades,并把部分 TTP 与 Sofacy 的联系评为低至中等置信。公开技术研究确认了 Lazarus 工件遭到伪造;2018 年的公开样本分析尚未延伸到 GRU 第 74455 部队的身份归因。Kaspersky:Hades, the actor behind Olympic Destroyer is still alive
2020 年,美国司法部起诉六名 GRU 第 74455 部队军官,并在起诉书中展开行动准备、凭据活动、恶意软件开发、部署时间和基础设施控制。英国政府随后公开表示,NCSC 以“几乎可以确定”的高置信度将行动归于这个部队。美国司法部新闻稿 · 美国司法部起诉书 · 英国政府公开归因
技术研究首先确认朝鲜方向的构建指纹经过人为复制;后续执法和情报调查再把行动归入 GRU。两步使用不同证据:技术研究处理线索真实性,执法与情报调查处理行动主体。
开幕式上的破坏,准备了两个多月
美国司法部起诉书把公开时间线向前推进到 2017 年 12 月。文件指控,行动准备约在 12 月 4 日开始;攻击者随后进入两家为平昌冬奥会提供服务的 IT 公司,窃取凭据、横向移动,并在 2018 年 1 月取得域管理员权限。
1 月 23 日至 24 日,攻击者在超过 16,000 台计算机和服务器上运行 PowerShell 凭据提取脚本,覆盖约 400 个独立账号。起诉书在后续段落另行描述恶意软件的部署与影响范围。
2 月 9 日 18 时 24 分,攻击者把 Olympic Destroyer 上传到供应商网络。19 时 42 分,开幕式进行期间,擦除组件在供应商域内批量执行。19 时 33 分至 22 时 23 分,攻击者又借助供应链连接向平昌冬奥组委会网络中的 30 台计算机部署恶意软件。起诉书称,供应商和组委会共有数千台计算机受到影响;英国政府同时指出,管理员及时隔离恶意软件并替换受影响设备,避免了更大范围的赛事中断。
Cisco Talos 在早期分析中记录了网站下线、观众无法打印门票和现场记者 Wi-Fi 受影响,并称非关键系统约 12 小时内恢复。公开来源记载的范围集中在这些 IT 服务,未见电视转播、全部场馆或整届赛事全面停摆的记录。Talos:Olympic Destroyer Takes Aim At Winter Olympics
OPSEC 第一层:尽量少用自己的身份和工具
攻击者大量使用已窃取的合法账号、受害方计算机和系统内置能力。起诉书描述了驻留内存的 PowerShell 凭据工具、域管理员账号、供应商网络中的工作站,以及从受害环境向外建立的单一隧道。Talos 还确认恶意软件借助合法签名的 PsExec 和 WMI 横向传播。
这些选择降低了自有恶意工具的暴露面积。来自合法账号的访问更容易混入日常运维,驻留内存的脚本减少落盘工件,PsExec 和 WMI 又是管理员常用能力。多数操作依托被盗账号、受害方主机和管理员工具,自有基础设施承担有限的连接和控制功能。
2017 年 12 月 22 日,攻击者在供应商网络的一台主机上建立命令控制植入,把内网操作收束到一台法国服务器。单一隧道减少了外部连接数量,也降低了多个出口暴露不同操作节点的风险。这台服务器同时形成一个高价值枢纽;隧道、受害端活动和服务商记录一旦对应,调查者便能借助少数连接点关联整段活动。
连接点减少后,外部暴露随之收窄;一旦枢纽被识别,单点记录对整段活动的关联价值随之上升。
OPSEC 第二层:擦除证据,同时破坏恢复能力
Olympic Destroyer 会删除 Windows 事件日志、影子副本和备份目录,关闭恢复功能、禁用服务、覆写共享目录文件并强制重启。美国司法部还指控恶意软件错误配置 BitLocker,使系统更难重新启动和恢复。
删除事件日志妨碍调查;删除备份、禁用恢复和擦除文件直接增加业务恢复成本。两类效果同时服务于开幕式这一固定时间窗口内的破坏目标。
擦除主要影响攻击者能够触及的终端。邮件、域名、云平台、网络设备、集中日志以及合作方和服务商仍可能保存独立记录。破坏范围扩大后,参与响应和保存记录的机构也会增加。
本地证据随擦除减少,事件可见性则随着破坏范围扩大,更多机构由此进入调查链。
OPSEC 第三层:制造指向其他主体的线索
攻击者复制的是研究人员和相似性工具会主动提取的构建元数据,并让它精确命中一个已知 Lazarus 样本。这个动作利用了分析流程中的一条默认假设:稀有且完全一致的开发环境指纹,比普通字符串更难伪造,因此权重更高。
美国司法部起诉书进一步指控,行动者在部署前数月专门研究 Lazarus 的恶意软件样本、系统工具和擦除程序,并修改代码去模仿该组织。起诉书据此把这些相似性描述为部署前经过设计的调查误导。这个说法属于检方指控;Kaspersky 的 Rich Header 分析本身只确认工件遭到伪造。
图 3|美国司法部起诉书第 39 页:检方指控行动者事先研究并模仿 Lazarus,开发用于遮蔽 Olympic Destroyer 特征的算法,并通过法国服务器建立单一隧道。该页内容属于检方指控,诉讼文件未公开全部底层证据。
这枚指纹被设计成可由研究人员发现并采信,目的在于影响观察者对证据的解释。这属于二阶 OPSEC:第一阶减少自身信号,第二阶操纵观察者如何解释信号。
这种方法短期有效,原因有三点:
- 高显著度线索能压过大量低显著度矛盾;
- 自动化相似性系统擅长寻找匹配,不天然判断匹配是否被故意植入;
- 高关注事件会压缩分析时间,媒体又倾向于迅速寻找具名攻击者。
Talos 当时列出 Lazarus、APT3、APT10、Nyetya 等多组相似性,同时提醒:公开代码、开源工具和已发表技术细节都可能被复用。这些相似性共同形成了一片嘈杂的“归因候选区”,难以收敛为统一的冒充身份。
这套归因误导为什么没有站住脚
指纹内部出现了不可能同时成立的事实
伪造 Rich Header 描述 Visual Studio 6,二进制主体却暴露 Visual Studio 2010 的启动代码。这种矛盾比“有没有相同字符串”更有区分度,因为它直接否定了 Header 由正常构建过程产生的可能。
图 4|二进制中出现 mscoree.dll 与 MSVC 运行库特征,与伪造 Header 所描述的老旧工具链不相容。来源:Kaspersky 原始技术报告。
图 5|Kaspersky 展示的擦除组件启动代码,研究人员据此识别出 Visual Studio 2010 编译特征。来源:Kaspersky 原始技术报告。
归因误导需要维持不同证据层的一致性。复制 Header 之后,编译器生成代码、导入库、对象数量和其他构建残留也必须互相相容。
赶工样本留下了对照组
Kaspersky 找到另一份 2 月 9 日从法国上传的样本。这个版本取消了 60 分钟延迟,Rich Header 看起来正常。研究人员据此推测,攻击者可能在赶工时忘记再次伪造 Header。“赶工”和“忘记”属于研究者推测。可直接观察到的是两个版本构成对照:一份包含异常的 Lazarus 指纹,另一份没有。
按时间排列两个样本后,异常元数据呈现出人为加工的版本差异。
两个月的行动留下了样本之外的证据
后续调查覆盖了钓鱼邮件、仿冒域名、恶意移动应用、供应商网络、被盗账号、PowerShell 操作、域管理员活动、法国服务器隧道、精确部署时间和攻击后的效果监控。起诉书还称,恶意软件部署后,攻击者登录一台由其管理的莫斯科服务器搜索相关新闻并跟踪影响。莫斯科是这台服务器的所在地,这项记录可纳入基础设施和账号调查链;它本身无法确认操作者当时的物理位置。
样本工件可以被单点篡改,跨组织、跨平台、跨时间保存的操作记录则分散在不同控制主体手中。
溯源的分水岭:证据能否被攻击者改写
Olympic Destroyer 促使调查者按照证据生成机制重新排序:可由攻击者直接编辑的字段主要用于生成假设;受害系统和第三方自然生成的记录承担更高的关联和归因权重。
证据层
样本自带字段
本案中的例子
Rich Header、字符串、编译时间、未使用代码
攻击者的控制能力
可直接复制、删除或伪造
合理用途
发现候选家族,主体身份待独立证据确认
证据层
操作过程
本案中的例子
被盗账号、PowerShell、PsExec、WMI、部署时间
攻击者的控制能力
能选择手法,但难控制所有日志副本
合理用途
还原入侵链,判断多起活动是否相关
证据层
网络基础设施
本案中的例子
法国隧道服务器、莫斯科受控服务器
攻击者的控制能力
可租用、转发、共享或使用被入侵主机
合理用途
形成枢转点,必须继续查账号、付款和服务商记录
证据层
独立保存记录
本案中的例子
供应商认证日志、邮件与域名记录、受害端遥测、服务商后台记录
攻击者的控制能力
分散在不同所有者手中,统一改写成本更高
合理用途
交叉验证时间线,并逐步连接到现实操作者
服务器国家和 VPS 出口只提供节点信息。出口节点可能是租来的、共享的、被入侵的,也可能只是多跳链路中的一站。调查价值来自控制面登录、创建时间、付款关系、密钥复用、管理端来源,以及这些记录与受害端时间线的对应关系。
来自同一工作区的多份材料可能共享同一来源。证据分布在相互独立的系统,并在时间与因果关系上互相约束时,数量才会增加可信度。
再把 2018 年的结论放回 ARTEX
上一篇 ARTEX 分析面对的材料比一枚 Rich Header 复杂得多。早期报道只确认疑似攻击服务器页面出现 ARTEX 字样;CrowdStrike 随后公开描述了 38.244.50[.]120 上的 ARTEX 实例、开放目录中的 .claude/CLAUDE.md、文档指向的香港节点,以及第二台服务器上的会话、配置和 memory。目标、活动时段、代理地址和寻找韩国数据销售渠道的查询,又让这些文件更像持续使用的工作环境。CrowdStrike 原始报告
图 6|CrowdStrike 原始报告的 ARTEX Infrastructure Analysis 段落。截图反映厂商对 ARTEX 实例、CLAUDE.md、香港节点、会话、配置和 memory 的公开叙述;开放目录原件、文件哈希、进程日志和采集时间未随文披露。
公开材料从一个可复制的字符串扩展到内部相互关联的内容环境,其中仍有三种操作角色:
- A:发起或持续使用 Claude/ARTEX 会话的人或账号;
- B:在文件生成、保存或暴露期间控制相关服务器的人;
- C:使请求实际到达韩国金融机构的人。
实时攻击工作区里,A、B、C 可能高度重合。整体复制会让目录内容来自 A,服务器由另一个 B 控制;共享或失陷主机会让同一环境对应多个 A 或 C;刻意诱饵则允许 B 放入来自真实、盗取或虚构身份的材料。这些文件的一致性首先把内容归入同一环境,现实操作者身份仍需独立证据连接。
CLAUDE.md、配置、会话和 memory 的内容深度不同,来源却可能相同。memory 可能是会话摘要,简历里的“活动成果”可能是用户重复输入的自述。三类文件若源自同一会话链,独立来源数仍然只有一个。上一篇留下的断点,是攻击者侧材料何时、通过什么账号和网络路径,与受害端某一笔成功访问形成对应。
CrowdStrike 把 VPS 获取、AI 能力和代理使用列入 ATT&CK 映射,并在正文列出九个 proxy IP addresses。公开博客没有说明这些地址属于公共开放代理、商业共享池、独享节点、被入侵中继还是临时转发主机,也没有公开协议、端口、认证账号、使用时段和逐任务映射。
稳定服务器承载会话、工具和状态,代理承担出口切换或任务分隔,这是常见的分层结构。WHOIS、地理位置和事后代理列表无法给出当时的共享人数;银行日志命中同一地址时,关联范围仍停留在出口节点。
图 7|原报告连续展示九个代理地址,并紧接着写到操作者询问韩国泄露数据通常在哪里出售。页面称这些地址为 proxy IP,没有说明公共、共享或独享,也没有公开使用时间、认证账号和逐任务映射。
简历、Telegram NFT、疑似支付平台活动和数据销售查询,让目录显得杂乱而有人味。这些内容让目录更像长期工作区,但仍可能共享同一证据来源。多人共用服务器、被入侵主机或整体复制目录,也会携带无关话题、错误、重试和个人化内容。
Olympic Destroyer 说明高权重线索可能经过设计。两案可以使用相同的检验问题,ARTEX 的结论仍由本案证据决定。
两起事件面对同一组检验问题
Olympic Destroyer 的三类 OPSEC 措施各有反作用。被盗账号、受害主机和单一法国隧道减少了自有暴露,少数连接点因而获得更高取证权重;擦除本地日志妨碍单机调查,扩大的破坏范围又引来更多机构保存外部记录;伪造 Lazarus 指纹制造了短期噪音,也增加了跨证据层保持一致的成本。
两起事件的材料形态不同,检验问题相同:一条线索能否被直接改写,它是否由自然运行过程生成,是否存在可比较的版本,以及目录之外有没有独立系统留下对应记录。
检验问题
高显著度线索是什么
ARTEX 韩国金融事件
ARTEX 名称、开放目录、会话、memory、中文材料和自述
Olympic Destroyer
与 BlueNoroff/Lazarus 样本完全一致的 Rich Header
能支持到哪一步
生成调查候选,主体身份待独立证据确认
检验问题
线索能否被直接改写或搬运
ARTEX 韩国金融事件
标题可复制,目录可以整体镜像,会话和 memory 可以编辑
Olympic Destroyer
Rich Header 可以从另一份样本复制
能支持到哪一步
可编辑性要求降低单条工件的身份权重
检验问题
生成过程是否自洽
ARTEX 韩国金融事件
task/activity、进程、文件、网络和 LLM API 调用是否连续
Olympic Destroyer
Header 所称工具链与启动代码、导入库是否相容
能支持到哪一步
检验材料是否由其声称的过程自然产生
检验问题
有没有对照或可信 first-seen
ARTEX 韩国金融事件
连续目录快照、版本历史、新闻前外部观测
Olympic Destroyer
未带异常 Header 的另一份样本
能支持到哪一步
区分长期演化与集中复制、植入或后改
检验问题
目录外有什么记录
ARTEX 韩国金融事件
云控制面、SSH、代理认证、银行请求与响应、业务对象、返回数据
Olympic Destroyer
受害网络、账号、服务商、基础设施和部署时间线
能支持到哪一步
推进事件因果与现实身份归因
图 8|本文分析图。ARTEX 工具部署、活动簇、事件因果和现实身份需要跨过不同证据门槛。Olympic Destroyer 同样说明,识别人为植入的误导性线索与识别真实主体是两个任务。
复制一套真实工作区,比从零编造便宜
伪造一枚 Rich Header 与从零编写一套长期工作区,成本差异很大。完整工作区包含错误、重试、缓存、路径、账号、个人话题和跨主机引用。人工逐项编造,越复杂越容易在时间、依赖和外部调用上露出矛盾。
完整工作区也可以从已有材料拼成。攻击者可以复制一个真实目录、暴露备份镜像、使用被入侵主机,或者把盗取的会话与少量定向内容混在一起。这样既能保留自然形成的人味和内部关系,又能改变这些材料出现的地点、时间和调查语境。
工作区复杂度削弱了“只改一个标题”的解释,整体复制、共享主机、失陷环境和真假混合仍然可行。判断关键在于文件是否由这台主机上的进程与外部服务连续生成。
Rich Header 的字段与生成过程冲突,Kaspersky 据此识别出复制痕迹。ARTEX 需要寻找同类矛盾:会话声称调用了工具,主机却没有相应进程和网络连接;memory 记录了结果,LLM API 和任务数据库却没有对应调用;文件显示新闻前活动,可信 first-seen 和云快照却只在新闻后出现;代理写在会话里,代理认证和银行日志却没有同一时间窗口的连接。
ARTEX 仍需核对的四类记录
目标最早在什么时候出现
韩国机构名称、业务入口、数据销售问题和简历里的“ARTEX 成果”,应当分别确定最早可信时间。文件 mtime 容易受复制、同步和解压影响。云快照、对象存储版本、外部扫描 first-seen、LLM API 调用记录以及受害端请求时间,提供更稳定的时间参照。
目标在媒体披露前出现,会削弱事后模仿解释;若还能包含当时未公开的业务对象、罕见请求或真实返回,区分度会更高。新闻前记录的来源仍需与更早的情报共享、测试数据和其他公开资料区分。
工作区有没有连续运行的因果残留
真实工作区通常会留下彼此依赖的过程:会话生成 task 或 tool\_call,执行器启动进程,进程建立网络连接,代理记录认证和转发,目标返回结果,随后输出文件或 memory 引用这项结果。任何一层都可能缺失,但各层若长期互相对应,整体复制和事后植入的成本会快速上升。
公开博客只提供调查者对会话、配置和 memory 的摘要,没有展开 ARTEX task/activity、主机进程、网络流和 LLM API 调用的逐项关系。外部读者因此无法判断目录中的“结果”来自真实执行、本地模拟、缓存、手工写入还是其他工具。
VPS 和代理能否落到具体账号
VPS 和代理首先定位到基础设施节点。现实身份连接还依赖控制面登录、系统账号、SSH 密钥、开通时间、付款关系、代理认证、连接时段和管理端来源。共享出口只形成弱网络关联;独享账号、稳定连接与受害端请求同步吻合时,权重随之上升。
稳定主机负责保存状态和运行工具,代理负责改变对外出口或分隔不同目标,足以解释 VPS 与代理叠加的结构。公开博客支持这一架构解释,完整攻击路径仍待逐跳记录复原。
银行侧有没有难以偶然重合的对象
请求和结果比单一 IP 更有区分度。HTTP 方法、路径、罕见参数、request_id、会话令牌、账户、贷款记录或其他业务对象,可以连接两侧活动;攻击者侧输出与银行响应、数据库查询或导出文件若在哈希、罕见字段组合或记录集合上重合,证据链便接近数据泄露闭环。
一个基本闭环由三部分组成:攻击者侧收发痕迹、受害端处理痕迹,以及难以偶然重合的对象或内容连接点。工作区文本和出口 IP 目前只覆盖其中的部分环节。
对 ARTEX 公开材料的判断
现有材料已经超过“网页上只有一个 ARTEX 字样”的证据量。CrowdStrike 描述的实例、跨主机文档、会话、配置、memory、目标和时间窗口共同指向一个相关活动环境。
实时使用的工作区目前解释力较强,但这个判断依赖厂商对采集真实性和文件关系的确认;底层目录、任务、进程、网络及受害端日志尚未公开。整体复制、共享或失陷主机仍是可检验的替代解释,关键证据在云控制面、系统身份、密钥、连续进程和外部服务记录。
完整诱饵在技术上可行,现阶段缺少指向这一方案的正向证据。Olympic Destroyer 提高了核验门槛;这个假设在 ARTEX 事件中的概率仍由本案证据决定。
ARTEX 可能参与侦察、目标选择或任务编排。取数和外传是否由它完成,还需 task ID、代理连接、银行授权结果、敏感响应与外传文件之间的映射。
Olympic Destroyer 留下的检验方法
ARTEX 的完整工作环境仍需排除复制、共享和刻意布置。Olympic Destroyer 表明,行动者具备研究归因模型并生产高可信线索的能力。
Lazarus 构建指纹的伪造由技术研究确认,GRU 归因来自后续执法与情报调查;ARTEX 的诱饵解释与 CrowdStrike 的活动簇判断同样需要各自的证据。可编辑工件用于提出假设,攻击者控制范围之外的记录用于收敛结论。
上一篇留下三个角色:会话作者 A、服务器控制者 B、银行请求发送者 C。合并 A、B、C 需要连续对应任务与进程、VPS 与代理账号、银行请求与返回数据、云和 API 服务商记录。三者即使最终重合,现实身份还需要账号、付款、登录以及执法或情报证据。
归因权重最终取决于一条线索能否在攻击者控制范围之外留下相互约束的因果记录。
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论