朝鲜黑客正将开发者工具变为恶意软件投递渠道
- 浏览次数 152
- 喜欢 0
网络安全研究人员标记了两个恶意网络活动,这些活动与一个被称为 Contagious Interview(又名 Famous Chollima、HexagonalRodnet 和 Void Dokkaebi)的朝鲜威胁集群具有相似之处。
Proofpoint 发布的一份报告指出,该威胁行为者正在策划网络钓鱼活动,利用开发者招聘或代码审查等主题,针对金融、加密货币、教育、科技等近 100 个组织进行攻击。该活动被命名为 UNK_DeadDrop。
Proofpoint 研究人员 Saher Naumaan 和 Carlos Rubio 表示:“感染链始于包含链接的电子邮件,这些链接指向攻击者控制的 GitHub 仓库,其中托管着恶意脚本,最终导致在 macOS、Linux 和 Windows 上执行跨平台恶意软件,包括一个名为 Overlord 的开源 Go 框架。”
将该活动与平壤联系起来的一个关键方面是使用了 Microsoft Visual Studio Code (VS Code) 项目,这些项目采用“runOn: folderOpen”技术,在每次打开代码编辑器时无需任何用户交互即可触发恶意代码的执行。自 2025 年 12 月以来,Contagious Interview 攻击者一直采用这种方法。
这家企业安全公司记录的活动涉及在六周内发送给近 100 个组织个人的 250 多封电子邮件。超过 75% 的目标实体位于美国,其次是英国、澳大利亚、法国、巴西、德国、印度、以色列、日本和荷兰。
电子邮件中包含指向 GitHub 仓库的链接,这些仓库伪装成技术作业或与加密货币相关的项目,指示收件人克隆仓库并在 VS Code 或 Cursor 中打开,从而导致执行针对 Linux、macOS 和 Windows 操作系统的恶意软件加载器。2026 年 5 月观察到的后续诱饵已转变策略,要求目标审查其开源项目。
该加载器(针对 macOS 和 Linux 的 shell 脚本以及针对 Windows 系统的 VBScript)旨在安装一个伪装成合法 Google 服务的恶意 VS Code 扩展 (VSIX),同时与外部服务器通信,以促进远程命令执行、系统侦察以及从浏览器钱包扩展、凭证和桌面钱包应用程序中窃取数据。
Linux 和 macOS 的感染链会导致一个自定义版本的开源 Overlord 框架,具备数据窃取能力。它还会使用虚假的安全弹出窗口提示用户输入系统密码。另一方面,Windows 攻击链依赖 VBScript payload 运行 CMD 文件,随后安装该扩展。
最终目标保持一致:从钱包浏览器扩展和应用程序中窃取凭证和数据,并通过 HTTP POST 请求将结果外泄到服务器("23.137.105[.]75:5173")。
Proofpoint 表示:“与 Linux/macOS 代理不同,Windows 管道不维持持久连接;它上传 ZIP 文件,执行清理,然后终止。”
进一步分析发现,该威胁行为者此前曾分发 Overlord 的 Windows Go 二进制文件,但已转向新方法,可能是为了规避检测。
Proofpoint 表示,由于初始访问方法(LinkedIn 与电子邮件)以及使用的 Overlord 框架(不同于该朝鲜黑客组织传统部署的自定义恶意软件家族,如 BeaverTail、InvisibleFerret 和 OtterCookie)存在差异,因此将 UNK_DeadDrop 作为独立于 Contagious Interview 的活动进行追踪。
该公司表示:“UNK_DeadDrop 活动表明,针对开发者以获取经济利益为目的的朝鲜相关行动正在成熟和演变。从通过社交媒体平台进行主动社会工程以进行虚假面试,转变为大规模分发指向恶意仓库的招聘主题网络钓鱼电子邮件,可能表明攻击者正在实现操作的工业化和规模化。”
这一披露正值 Yeeth Security 表示在官方市场上发现了三个名为 "ByteBinTools.jupyter-powerdev-2026.6.8.vsix"、"ToolCraft.jupyter-powertools-3.21.0.vsix" 和 "OLDev.markdown-mode-devtools-2.1.0.vsix" 的恶意 VS Code 扩展。这些扩展伪装成看似无害的 Jupyter Notebook 生产力工具,但实际上是一个旨在绕过端点防御的“复杂多阶段后门”。
该恶意软件支持以下功能:
- 一个 SharePoint 网站,充当命令队列、受害者注册表和外泄通道
- 一个 JavaScript 层,通过 Microsoft Graph API 和 SharePoint 处理所有命令与控制 (C2) 通信
- 启用任意文件读取、写入和外泄的组件,以及使用 Windows 可执行文件和针对 Linux/macOS 的 Python 脚本执行代码
除了运行命令或脚本外,C2 通道还可以发出第三种命令类型“host_action”,用于执行 pwd、ls、cd 和 cat 等文件系统操作,以及文件上传和下载。
尽管与任何公开记录的朝鲜活动没有直接重叠,但 Yeeth Security 表示,开发者工具在 JavaScript 和 Python 之间的划分与 Contagious Interview 有相似之处,且恶意工件的 Microsoft Graph API 身份验证机制与 S2 Grupo LAB52 在 2025 年 10 月详细描述的 Lazarus Group 的 Dream Job 攻击有一些相似之处。
这些发现与近几个月来发现的多个与朝鲜威胁行为者相关的活动相吻合:
- 针对 Axios 供应链攻击的后续行动,使用了三个恶意 npm 包(redeem-onchain-sdk @1.0.7、nicegui @0.1.4 和 period-newline @0.1.0),这些包传递一个信息窃取程序,将收集到的数据外泄到不同的 C2 基础设施。这些包被列为伪装成加密货币交易机器人的 GitHub 项目的依赖项。OpenSourceMalware 表示:“在 Axios 恶意包从 NPM 移除后不到 18 小时,第一个二级 payload 就已经在注册表上上线。这表明威胁行为者准备了备用基础设施,并准备立即部署替代的投递机制。”
- 一项名为 TaskJacker 的攻击活动已被投放,将恶意 VS Code 任务文件放入毫无戒心的 GitHub 用户的现有仓库中,以蠕虫方式传播。OpenSourceMalware 团队表示:“通过将 VS Code 的 tasks.json 自动执行功能武器化,攻击者创造了一种场景,只需在 IDE 中打开克隆的仓库即可危及您的系统。除了 git clone 和打开文件夹外,不需要任何用户交互。”
- Contagious Interview 使用 Git hooks(".githooks/pre-commit")在目标克隆“编码评估”仓库时触发恶意代码执行,标志着从将恶意代码隐藏在 .vscode/tasks.json 或 package.json 文件中发生了转变。
- Contagious Interview 使用受损的 Packagist 包("roberts/leads")针对 PHP 开发者,使用 JavaScript 恶意软件加载器连接到区块链和公共 RPC 基础设施,以获取、解密并执行下一阶段 JavaScript payload。攻击者还利用对受损开发者系统的访问权限篡改提交,并将多阶段混淆的 JavaScript 代码注入其仓库的源代码文件中。最终 payload 是 DEV#POPPER RAT 的一个变体。
- Trend Micro 表示:“Void Dokkaebi 的行动不会止于单个受感染的开发者。受损的机器成为发射台,威胁行为者将受害者的仓库武器化,并将其代码贡献转化为针对下游开发者的感染载体。结果是一个类似于蠕虫行为的自我维持传播链,而不是传统的定向攻击。”
- Contagious Interview 将 InvisibleFerret 从可读的 Python 脚本迁移到 Cython 编译的二进制文件,在 Windows 上以 .pyd 文件分发,在 macOS 上以 .so 文件分发。Trend Micro 表示:“此次更新为入侵集提供了额外的规避层,同时保留了 InvisibleFerret 的核心功能,包括后门访问、浏览器凭证窃取、剪贴板监控、键盘记录以及加密货币钱包目标定位。BeaverTail 也已从最初的下载器和窃取器角色扩展到更广泛的恶意软件,具有重叠功能,包括凭证收集和钱包木马化。”
- 发现一个名为 "terminal-logger-utils" 的恶意 npm 包,针对 Telegram 数据、SSH 密钥、加密钱包、云配置和环境变量。该包由 "jpeek895" 发布,该账户因在 2026 年 4 月下旬发布名为 "terminal-logger-pack" 的类似包而被标记。另一个名为 "js-logger-pack" 的恶意 npm 包被发现传递具有信息窃取和远程访问木马 (RAT) 功能的 ELF 二进制文件。
- BlueNoroff(又名 Sapphire Sleet 和 UNC1069)针对高价值金融领域的 macOS 环境,作为针对加密货币、投资和 Web3 领域个人的定向社会工程的一部分,投递信息窃取恶意软件。其中一些努力还使用虚假的 Zoom 和 Microsoft Teams 会议主题诱饵以及 ClickFix 风格的提示和指令,安装所谓的“缺失”会议 SDK 并传递恶意 payload。攻击导致部署了更新版本的 Cabbage RAT(又名 CageyChameleon)、能够进行凭证和数据窃取的 PowerShell 植入程序,或新识别的 macOS 数据窃取工具包 Mach-O Man。
- Microsoft 表示:“通过说服用户手动执行 AppleScript 或基于 Terminal 的命令,Sapphire Sleet 将执行转移到用户启动的上下文中,允许活动绕过 macOS 保护,如透明度、同意和控制 (TCC)、Gatekeeper、隔离执行和公证检查。”
- Contagious Trader 使用嵌入在 100 多个 GitHub 仓库中的 50 多个恶意包,针对加密货币领域的开发者,投递三个恶意软件家族:PromptMink、OtterCookie 和名为 ClipViper 的新 Windows 剪贴板窃取器。Panther 表示:“恶意仓库通过 X 和 Reddit 上的验证账户进行推广,使用伪造的开发者身份和机器人刷高的星标数以显得合法,并分布在 40 多个 GitHub 用户和组织中作为冗余投递前端。”
- 发现由多个一次性账户发布的一簇混淆的恶意 npm 包,通过 postinstall hook 传递 OtterCookie 信息窃取程序的变体。另一个名为 "node-env-resolve" 的恶意 npm 包被发现使用与 OtterCookie 工具包匹配的六个运行时依赖项。
- Contagious Interview 使用生成式人工智能协助开发负责启动 BeaverTail 和 OtterCookie 的加载器,并建立用于发布职位空缺和通过虚假 LinkedIn 账户进行社会工程拓展的空壳公司。Expel 分享的数据显示,这些活动可能由多个团队执行,每个团队由多名成员组成。2026 年前三个月,这些攻击导致价值 1200 万美元的加密货币被盗。Expel 的 Marcus Hutchins 表示:“威胁行为者的活动从 2,726 名受感染开发者的系统中外泄了总计 26,584 个加密货币钱包。”
- 一项名为 jsonspack 的供应链攻击活动使用了 27 个恶意 npm 包来传递 JavaScript RAT 和信息窃取程序,或投放加载器以获取未指定的 payload。另一个名为 "sleek-pretty" 的恶意 npm 包被发现针对运行 Polymarket 交易机器人的开发者,执行系统指纹识别、SSH 后门安装、文件系统外泄以及针对性地窃取 Polymarket CLOB API 凭证。
- 在 2026 年 3 月 20 日至 4 月 20 日期间,一项持续的大规模 npm 恶意软件活动涉及 108 个恶意包和 261 个包版本,针对开发者,旨在窃取凭证、Telegram Desktop 会话和钱包密钥,并使用 BeaverTail 和 OtterCookie 等恶意软件家族建立持久访问。
Expel 表示:“虽然出于经济动机的网络犯罪对几乎所有民族国家都缺乏吸引力,因为由此产生的制裁造成的金钱损失将远远超过任何经济利益,但朝鲜并非如此。由于该国已经受到严厉制裁,因此几乎没有什么可以阻止他们,但对于经济活动受到严重限制的国家来说,却有很多可以获得的利益。”