安全指南

Ethersphere bee-js 13.3.0 和 Swarm Desktop 0.56.2 带有恶意软件(2026年11月):受影响版本以及用户该怎么做

Ethersphere(Swarm)的 bee-js 13.3.0 和 Swarm Desktop 0.56.2 于2026年11月9日带有恶意代码。据 GitHub 公告,说明受影响版本以及该怎么做。

发布于 2026-11-10 更新于 2026-11-10 最后核实 2026-11-10 5 分钟阅读
本页目录

适合:使用 Swarm(Ethersphere)的 npm 包 @ethersphere/bee-js 的开发者和 CI 运维人员,以及用 Swarm Desktop 运行 Swarm 节点的人。本文基于 GitHub 公告以及 Ethersphere 在 GitHub 上发布的内容。不涉及恶意软件的工作原理或入侵指标(IoC)。

事件仍在发展:本文将随机构发布更多信息而更新

适用对象

使用 Swarm(Ethersphere)的 npm 包 @ethersphere/bee-js 的开发者和 CI 运维人员,以及用 Swarm Desktop 运行 Swarm 节点的人。

已确认的影响范围查看表格 ↓
  • 受影响的 bee-js 版本
  • 受影响机器的处理
  • 轮换密钥和机密
另外3项
  • 被攻陷的 Swarm Desktop 版本
  • 各版本公开了多久
  • 通过自动更新送达

被列为可能涉及的项目

  • 节点密钥和密码被盗
  • 发布流程被接管
尚未确认的事项
  • 是否有密钥被盗或资金损失
  • 入侵是如何发生的(Ethersphere 自己的说明)
  • Ethersphere 的详细报告和用户指引
另外1项
  • 有多少用户受到影响
现在要做的事查看步骤 ↓
  1. 确认是否受影响:查找 13.3.0 和 0.56.2
  2. 如果受影响:把机器或 CI 环境视为已被攻陷
  3. Swarm 节点运营者:新建密钥并转移资金
另外2项
  1. 轮换凭据:该机器或 CI 能触及的一切
  2. 固定版本并重新安装
最后核实
截至2026年11月10日
续报计划与核实记录

GitHub 公告发布于2026年11月9日。2026年11月10日我们查看时,Ethersphere 的 bee-js 发布页面仍把 13.2.0 列为最新版本,没有 13.3.0 的条目。Swarm Desktop 0.56.3 的发布说明只说它取代了被攻陷的 0.56.2。我们没有找到 Ethersphere 自己发布的、说明发生了什么或向用户提供指引的通知。

bee-js 和 Swarm Desktop 用户今天该做什么

第 1 步适用于所有人。从第 2 步起,适用于安装(或启动)过受影响版本的人。

1

确认是否受影响:查找 13.3.0 和 0.56.2

  • bee-js:在锁定文件、node_modules、包缓存、内部包镜像和 CI 日志中查找 @ethersphere/bee-js 13.3.0。公告把 13.3.0 列为唯一受影响的版本
  • Swarm Desktop:确认应用版本是否为 0.56.2,以及您是否启动过它。据安全公司的分析,它也通过自动更新送达了 Windows x64 和 Apple Silicon
  • bee-js 13.2.0 及更早版本以及 Swarm Desktop 0.56.1 不受影响(安全公司的分析)
  • 如果无法判断,请按受影响处理(本站的补充)
2

如果受影响:把机器或 CI 环境视为已被攻陷

公告称,凡是安装或运行了该包的计算机都应视为已被完全攻陷,并要求删除该包。公告警告说,删除可能无法清除安装所带来的全部恶意软件。

  • 让机器断开网络,并尽可能重建。重新创建一次性的 CI runner
  • 其余工作请在另一台未被攻陷的计算机上完成
3

Swarm 节点运营者:新建密钥并转移资金

据安全公司的分析,Bee 节点的配置文件(包含明文密码)及其加密的钱包密钥是目标。它的指引如下:

  • 假定密码和钱包密钥已被盗
  • 在干净的机器上新建密钥,并把资金、chequebook 余额和质押转移过去
  • 查找恶意软件留下的持久化(用户级自启动项、远程控制软件)。重新安装应用可能无法清除它

是否真的有密钥被盗或发生损失,尚未公布。在能够确认并非如此之前,按已被盗来行动是稳妥的做法(本站的观点)。

4

轮换凭据:该机器或 CI 能触及的一切

公告要求立即从另一台计算机上轮换机器上存放的所有机密和密钥,但没有列出具体内容。下面是本站的补充,依据安全公司对安装用户或 CI 任务所能触及内容的描述。

  • npm 和 GitHub 令牌、云密钥、SSH 密钥
  • CI 机密,以及签发给 CI 的短期云凭据(通过 OIDC)
  • 保存在该机器浏览器或密码库中的凭据

先设置好新凭据再停用旧凭据,可以避免停机(本站的补充)。密钥应保存在哪里的基础知识,见.env 文件和 API 密钥为什么有风险。

5

固定版本并重新安装

  • bee-js:固定在 13.2.0(安全公司的指引)。没有已修补的版本(公告)
  • Swarm Desktop:更新到 0.56.3。Linux 不会自动更新,需要手动更新(安全公司的分析)。更新会移除被攻陷的版本,但不会撤销已经运行过的内容

安装了 bee-js 13.3.0 / 启动了 Swarm Desktop 0.56.2

视为已被完全攻陷

↓

重建机器/CI;从另一台机器轮换密钥和机密

把钱包迁移到新密钥并转移资金

bee-js 13.2.0 及更早版本 / Swarm Desktop 0.56.1

不受影响(安全公司的分析)

↓

保持版本固定

bee-js 13.2.0,Desktop 0.56.3

各种情况下该怎么做,依据 GitHub 公告和安全公司的分析。

如何解读:我们没有找到 Ethersphere 自己的详细通知

本文中的受影响版本和应对措施来自 GitHub 公告和 Ethersphere 的发布说明。各版本公开了多久、谁收到了自动更新、目标是什么,以及对发布流程的滥用,都来自一家安全公司的分析,而不是 Ethersphere。截至2026年11月10日,我们没有找到 Ethersphere 的详细通知,官方指引出现后我们会改写正文。

事件经过

本节基于 GitHub 公告、Ethersphere 在 GitHub 上的发布说明以及一家安全公司的分析。除非另有说明,时间均为协调世界时,括号内为日本时间。不包含恶意软件的通信端点和文件值。

  1. 11月6日

    据安全公司的分析,此前从 Ethersphere 的代码仓库中提取机密的尝试失败了,该公司以中等把握判断没有数据被窃取。
  2. 11月8日前后

    有人提交了一个恶意提交。其显示的时间戳为 23:59,这个值可以被任意设置(安全公司的分析)。
  3. 11月9日 00:09(09:09)

    bee-js 13.3.0 以 latest 的身份出现在 npm 上(安全公司的分析)。
  4. 00:43 至 00:44(09:43 至 09:44)

    Swarm Desktop 0.56.2 的自动更新从 00:43 起提供给 Windows(x64),从 00:44 起提供给 Apple Silicon(安全公司的分析)。
  5. 01:24(10:24)

    npm 撤下了 13.3.0,距其出现约 75 分钟(安全公司的分析)。
  6. 约 09:04 至 09:14(18:04 至 18:14)

    Swarm Desktop 0.56.2 的标签被删除,该发布不再公开,已公开约 8.5 小时(安全公司的分析)。
  7. 11月9日

    GitHub 公告 GHSA-hh7j-5m3j-23pf 发布。Ethersphere 发布了 Swarm Desktop 0.56.3,并在发布说明中注明它取代了被攻陷的 0.56.2。
约 75 分钟
bee-js 13.3.0 在 npm 上的时间(安全公司的分析)
约 8.5 小时
Swarm Desktop 0.56.2 公开的时间(安全公司的分析)
仅 13.3.0
公告所称受影响的 bee-js 版本;没有已修补的版本
13.2.0 及更早
不受影响(安全公司的分析)
官方声明与安全公司的分析
受影响(公告)
仅 npm @ethersphere/bee-js 13.3.0。没有已修补的版本。类型:恶意软件(嵌入的恶意代码)
对用户的指引(公告)
凡是安装或运行了它的计算机都视为已被完全攻陷。删除该包。删除可能无法清除一切。立即从另一台计算机上轮换所有机密和密钥
Swarm Desktop(Ethersphere 发布说明)
11月9日发布的 0.56.3 取代了被攻陷的 0.56.2。没有进一步说明
分发范围(安全公司的分析)
npm 上的 bee-js 13.3.0;作为 GitHub 发布的 Swarm Desktop 0.56.2。获取并运行远程代码的加载器在安装时运行,或在应用每次启动时运行。Linux 软件包不会自动更新,但同样受影响
目标(安全公司的分析)
Bee 节点的配置文件(含明文密码)及其加密的钱包密钥,以及安装用户或 CI 任务能触及的一切
发布流程(安全公司的分析)
两个 GitHub 账户(一个维护者和发布自动化)被接管;来源没有说明。由于发布工作流没有检查受保护分支,恶意代码在合法的发布流程中运行
危害
在我们查看的来源中,没有公布被盗密钥或损失

已知与未知

截至2026年11月10日的状态。有更多信息公布时,我们会更新状态一栏。

项目内容状态
受影响的 bee-js 版本仅 @ethersphere/bee-js 13.3.0;没有已修补的版本已确认(GitHub 公告)
受影响机器的处理已安装或正在运行的,视为已被完全攻陷已确认(GitHub 公告)
轮换密钥和机密立即,从另一台计算机上进行已确认(GitHub 公告)
被攻陷的 Swarm Desktop 版本0.56.2;由 0.56.3 取代已确认(Ethersphere)
13.2.0 及更早版本、0.56.1不受影响不在范围内(安全公司的分析)
各版本公开了多久bee-js 13.3.0 约 75 分钟;Swarm Desktop 0.56.2 约 8.5 小时已确认(安全公司的分析)
通过自动更新送达送达 Windows(x64)和 Apple Silicon已确认(安全公司的分析)
节点密钥和密码被盗配置文件(明文密码)和钱包密钥是目标可能(安全公司的分析)
发布流程被接管GitHub 维护者和发布自动化账户可能(安全公司的分析)
接管的起因没有说明调查中
实际被盗的密钥或损失未公布未说明
受影响用户数量未公布未说明

开发包被篡改时可能发生什么

以下是一般性说明,并不意味着本次事件中发生了这些事。

npm 包以安装者的权限运行,有些包在安装时会自动运行脚本。在开发者电脑或 CI 任务上运行时,它可以触及那里的环境变量、文件和云权限。桌面应用在每次启动时都会运行,所以通过它的更新机制,即使很短的暴露时间也可能触及许多机器。

在加密货币节点和开发环境中,密钥和解锁它的密码可能放在同一台机器上,所以被看到其中之一就可能导致资金被转走。它与拼写仿冒的不同之处在于,代码来自合法的分发渠道,使用的是合法的名称和版本。类似的案例有LiteLLM 1.107.0和Trivy 供应链被攻陷事件。

包的使用者应该检查什么

本节不是对该机构应对的评价。仅限于根据已公布的情况,使用者为应对下一次事件可以做的准备。

1

不要自动拉取刚发布的版本

恶意版本在 npm 上停留了约 75 分钟。在锁定文件中固定版本、在 CI 中严格按锁定内容安装(例如使用 npm ci),并且只使用发布超过一定天数的版本(pnpm 的 minimumReleaseAge、uv 的 exclude-newer 等),可以让您更不容易拉取到几分钟内就被撤回的版本。做法见防御 npm 供应链蠕虫。

2

只让需要的包运行安装时脚本

据安全公司的分析,bee-js 的恶意软件是通过安装时脚本运行的。默认关闭依赖的安装脚本(--ignore-scripts、pnpm 的允许列表),只允许必需的,可以降低这类攻陷的影响(本站的补充)。

3

来源证明不等于安全保证

据安全公司的分析,该 npm 包带有有效的来源证明(provenance),因为恶意代码是在真实的发布工作流内部运行的。来源证明表明的是包在哪里构建,并不保证内容是安全的(本站的补充)。

4

不要把钱包密钥和它的密码以明文放在同一台机器上

据安全公司的分析,Swarm Desktop 把密码以明文保存在配置文件中。把存放资金的密钥与日常开发环境分开,可以降低一边被攻陷后直接导致资金受损的可能(本站的补充)。

5

如果您发布包:在工作流内部检查发布条件

对于维护者,安全公司的分析建议:在发布工作流内部检查提交是否在受保护分支上,为发布环境添加必需的审核人和标签限制,不要把签名机密传给在任意分支上运行的工作流,并缩小发布机器人令牌的权限并轮换。如果您发布包,请检查同样的几点。

信息来源(公开记录)

本文中的事实来自以下公开信息。不转载恶意软件端点、文件名、哈希及其他指标值。

  • GitHub Advisory Database,“GHSA-hh7j-5m3j-23pf: Malware in @ethersphere/bee-js”(2026年11月9日发布)— github.com
  • Ethersphere “swarm-desktop” GitHub 发布页(v0.56.3,2026年11月9日;发布说明称其取代被攻陷的 0.56.2)— github.com
  • Ethersphere “bee-js” GitHub 发布页(11月10日确认;最新为 v13.2.0)— github.com
  • 一家安全公司的分析,“The bee-js and Swarm Desktop release compromise”(辅助来源;各版本公开了多久、自动更新、目标、对发布流程的滥用)— socket.dev

更新记录

2026-11-10:首版。基于 GitHub 公告(2026年11月9日)、Ethersphere 在 GitHub 上的发布说明以及一家安全公司的分析。我们没有找到 Ethersphere 自己的详细通知。官方指引发布后,我们将更新。

延伸阅读

最新快讯

FAQ

Q哪些版本受影响?
A

根据 GitHub 公告(GHSA-hh7j-5m3j-23pf),唯一受影响的 npm 版本是 @ethersphere/bee-js 13.3.0,没有已修补的版本。至于 Swarm Desktop,Ethersphere 的发布说明称 0.56.3 取代了被攻陷的 0.56.2。一家安全公司的分析报告称,bee-js 13.2.0 及更早版本以及 Swarm Desktop 0.56.1 不受影响。

Q如何确认自己是否受影响?
A

对于 bee-js,请在锁定文件、缓存、内部包镜像和 CI 日志中查找 13.3.0。对于 Swarm Desktop,请确认应用版本是否为 0.56.2,以及您是否启动过它。安全公司的分析称,Windows x64 和 Apple Silicon 用户可能通过自动更新程序收到它,所以即使自己没有安装过任何东西也可能受影响。如果无法判断,请按受影响处理(本站的补充)。

Q删除 13.3.0 就够了吗?
A

不够。GitHub 公告称,凡是安装或运行了该包的计算机,都应视为已被完全攻陷。公告要求删除该包,但警告说删除可能无法清除安装所带来的全部恶意软件,并要求立即从另一台计算机上轮换所有机密和密钥。

Q我的 Swarm 节点钱包和资金该怎么办?
A

据安全公司的分析,Bee 节点的配置文件(包含明文密码)及其加密的钱包密钥是目标。它建议假定密码和密钥已被盗,并把资金、chequebook 余额和质押转移到在干净机器上新建的密钥。撰写本文时,我们没有找到 Ethersphere 自己的指引。是否真的有密钥被盗或发生损失,尚未公布。

Q原因是什么?
A

撰写本文时,我们没有找到 Ethersphere 的详细说明。安全公司的分析报告称,有两个 GitHub 账户被接管:一个能够强制推送到未受保护分支的维护者账户,以及发布自动化账户。账户最初是如何被攻陷的,没有说明。它称,发布工作流在接受发布事件时,没有检查提交是否来自受保护分支。这是外部分析,不是机构的公告。

Q更新到 Swarm Desktop 0.56.3 就够了吗?
A

更新只会替换被攻陷的版本,不会撤销已经运行过的内容。如果您启动过 0.56.2,请把那台机器视为已被攻陷,并轮换您的密钥。安全公司的分析称,Linux 软件包不会自动更新,必须手动更新,而且重新安装应用并不一定能清除恶意软件留下的持久化。