返回资讯中心
外部精选
软件工程
#开发者实时流

GitHub Actions 遭迄今最大规模攻击,攻击者借 VPN 服务基础设施复用作案

来源标题:W(hat the) FX: Infrastructure re-use on the biggest GitHub action attack?

GitHub Actions 遭遇迄今最大规模攻击,攻击者通过窃取的 GitHub token 向仓库植入窃密程序,波及 8000 个仓库、数千账户被劫持。攻击者运营着名为 Sneakry VPN 的俄语商业 VPN 服务,并将其基础设施复用于此次攻击。攻击者以“docs: dependency audit notes”为标题发起探测性 PR,注入后推送清理提交并删除 Actions 运行日志以掩盖痕迹。

Hacker News 最新hiddenvulkcan2026/11/12 · 今天17 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

今天,我们见证了有史以来规模最大的一次 GitHub Actions 攻击!真是生逢其时。关于这次恶意软件、攻击活动及其影响,外面已经有大量出色的报道。你可以从这些信誉良好的来源读到相关内容。

WFX 与 GhostAction:追踪两起 GitHub 攻击之间的关联 wfx:GitHub Actions 凭据窃取程序入侵 8,000 个仓库 数千个 GitHub 账户被劫持,wfx-loot CI 机密窃取恶意软件通过 GitHub Actions 与 npm 传播

但我们不关心这些,我们关心的是“是谁”以及“怎么做”。

最简版本是这样的。WFX 的操作者运营着一家名为 Sneakry VPN 的商业俄语 VPN 服务,通过 Telegram 销售。

从今天下午早些时候开始,被盗的 GitHub token 被用来通过以下 3 种方法之一将机密窃取程序推送到仓库中。

攻击者从名为 wfx-docs 的分支发起标题为“docs: dependency audit notes”的探测性 PR。

注入之后,攻击者推送 ci: restore 或 ci: cleanup 提交,并删除 Actions 运行日志。在一位受害者的时间线中,cleanup 提交在 payload 提交之后一分钟就落地了。

关于 payload 的完整分析,请阅读 Ossprey Security 的分析。我们继续。

整个攻击活动中使用了两个外传端点:

我们无法从那个 AWS IP 获取更多信息,服务器现已下线,此后该 IP 很可能已被轮换回池中,所以只能留给 AWS 去调查了。

不过那个 194.150 的 IP 很有意思。它是 3 种攻击方法中 2 种所使用的 C2。等我去检查它的时候,8080 端口上运行的服务已经关闭,但还有些东西残留着。其中最重要的是 80 端口上的内容。

一台运行 nginx/1.24.0 的 Ubuntu 服务器,提供一个指向 avalon-n.sneakry.com 的重定向。

好吧,这很奇怪。而且还有更妙的。

194.150.166.244 直到上周,这个 IP 还属于三星的 Akamai CDN 基础设施。Akamai Ghost 服务器是交付三星网页内容的边缘缓存代理,看起来他们最近迁离了这个 IP 段。

他们一迁走,WFX 攻击操作者就能从 Regxa Company(AS215311)租到这个 IP,这是一家位于伦敦的小型注重隐私的托管服务商。

这是个题外话,但很有意思,因为商业 IP 信息服务机构仍然把这个 IP 与三星的服务关联在一起,很可能还附带了一个不错的信任评分。

外传机器上的 80 端口重定向到 avalon-n.sneakry.com。该域名属于操作者至少从 2025 年 7 月起就在运营的一个分布式代理/中继网络。

证书透明度日志显示有 142 张 TLS 证书关联到 sneakry.com 及其子域名。在看到的 30 个子域名中,撰写本文时有 10 个可解析。

每个主节点都位于 Regxa(AS215311),与外传机器是同一家托管服务商。fire.sneakry.com 解析到 194.150.166.244——正是 wfx 外传服务器本身。

我们后来注册了该 VPN 自己的试用版,拉取了客户配置:付费用户获得的出口节点是 orion(华沙)、fallout(鲁贝)、avalon-n(Cloudflare 前置)和 atlas(法兰克福)。

所有这些都被打上了同一个 sneakry.com 家族的品牌,前两个与外传机器在同一个 Regxa 账户下。fire 不是出口节点。它是操作者自己的机器,接收来自数千个 CI runner 的被盗凭据,与客户浏览所在之处仅一跳之隔。

中继节点使用了额外的服务商:

web.sneakry.com 为一家名为 Sneakry VPN 的商业 VPN 服务提供一个俄语 Telegram Mini App。

Добро пожаловать в Sneakry Быстрый доступ без ограничений на всех устройствах ⭐ Telegram Stars — Мгновенно, прямо в Telegram

翻译:“欢迎来到 Sneakry。在所有设备上快速访问,无限制。Telegram Stars——即时,直接在 Telegram 中。”

该服务是一个在 Telegram 内运行的 mini app,使用 Telegram Stars(Telegram 的应用内货币)支付,面向俄语用户。

支付通过 @TrustStarsBot 处理,这是一个俄语 Telegram Stars 购买服务,设有支持(@TrustStarsHelp)、评价(@TrustStarsOtz)和新闻(@TrustStarsNews)频道。

该攻击活动显示出外传方法的明显演进:

在受害者仓库中发现的最新 .ci 脚本包含五个活跃的 Telegram bot token,用作外传 worker 池。

在调查进行过程中,注意到 worker2 已被踢出群组。这实质上意味着,如果数据解析到 worker2,那么在被外传之前,有一定比例的数据实际上正在丢失。

这些 bot 使用 sendDocument API 方法将窃取的数据发送到一个名为 EGO(ID -1004340163187)的私有 Telegram 超级群组。该频道没有公开用户名,没有描述,没有邀请链接就无法加入。

较新脚本中的最后一个线索:HTTP 回调仍然存在——但被设置为 http://127.0.0.1:1/x,一个死掉的本地端口。窃取程序的整个 HTTP 外传路径现在都终止于虚空,而由 Telegram 承担真正的工作。

该频道有五名成员。四名是 bot 管理员。第五名——频道创建者,是操作者的个人账户:

这是一次重大的操作升级。Telegram 托管着外传端点。要取缔它需要 Telegram 的配合,而不是查封一台服务器。

wfx 攻击活动并非首次使用该技术。2026 年 10 月,GhostAction 攻击活动使用了相同的投递方法。

我们没有发现 WFX 攻击活动与 GhostAction 之间存在任何基础设施复用。

两波攻击之间被复用的是访问权限。我们观察到在两波攻击中都遭到入侵的劫持账户,并在 1 名受害者身上发现了连续性:

有趣的是,我们发现此案例中同一个仓库、同一个文件被原地替换,从 GhostAction 恶意软件换成了 WFX 恶意软件。

在我看来,这表明我们看到的是同一个行为者带着更好的工具包回来了。

(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →