Для кого: разработчиков и операторов CI, которые используют npm-пакет Swarm (Ethersphere) @ethersphere/bee-js, и тех, кто запускает узел Swarm через Swarm Desktop. Статья основана на бюллетене GitHub и на том, что Ethersphere опубликовала на GitHub. Принцип работы вредоносной программы и индикаторы компрометации (IoC) в ней не рассматриваются.
В развитии: статья будет обновляться по мере публикации новых данных организацией
- Кого это касается
разработчиков и операторов CI, которые используют npm-пакет Swarm (Ethersphere) @ethersphere/bee-js, и тех, кто запускает узел Swarm через Swarm Desktop.
- ПодтвержденоСмотреть таблицу ↓
- Затронутая версия bee-js
- Как поступать с затронутыми машинами
- Смена ключей и секретов
Ещё 3
- Скомпрометированная версия Swarm Desktop
- Сколько времени каждая была доступна
- Доставка автообновлением
Названо как возможно затронутое
- Кража ключа и пароля узла
- Захват процесса выпуска
- Пока не подтверждено
- Были ли украдены ключи и потеряны ли средства
- Как произошло проникновение (собственный рассказ Ethersphere)
- Подробный отчёт и рекомендации пользователям от Ethersphere
Ещё 1
- Сколько пользователей затронуто
- Что сделать сейчасСмотреть шаги ↓
- Проверьте, затронуты ли вы: ищите 13.3.0 и 0.56.2
- Если затронуты: считайте машину или среду CI скомпрометированной
- Операторам узлов Swarm: создайте новый ключ и переведите средства
Ещё 2
- Смените учётные данные: всё, до чего можно добраться с этой машины или из CI
- Зафиксируйте версии и переустановите
- Где проверить (источник)Все источники ↓
- GitHub Advisory Database, «GHSA-hh7j-5m3j-23pf: Malware in @ethersphere/bee-js» (опубликовано 9 ноября 2026 года)
- Последняя проверка
- По состоянию на 10 ноября 2026 года
Планы обновлений и что мы проверили
Бюллетень GitHub опубликован 9 ноября 2026 года. Когда мы проверяли 10 ноября 2026 года, на странице выпусков bee-js у Ethersphere последней по-прежнему значилась 13.2.0, записи о 13.3.0 не было. В примечаниях к выпуску Swarm Desktop 0.56.3 сказано лишь, что он заменяет скомпрометированную 0.56.2. Сообщения самой Ethersphere, объясняющего, что произошло, или дающего рекомендации пользователям, найти не удалось.
Что делать сегодня пользователям bee-js и Swarm Desktop
Шаг 1 касается всех. Начиная с шага 2 — если вы устанавливали (или запускали) затронутую версию.
Проверьте, затронуты ли вы: ищите 13.3.0 и 0.56.2
- bee-js: проверьте файлы блокировки,
node_modules, кэши пакетов, внутренние зеркала пакетов и журналы CI на@ethersphere/bee-js13.3.0. Бюллетень называет затронутой только 13.3.0 - Swarm Desktop: проверьте, была ли версия приложения 0.56.2 и запускали ли вы его. По анализу компании по безопасности, на Windows x64 и Apple Silicon он доставлялся и автообновлением
- bee-js 13.2.0 и более ранние версии и Swarm Desktop 0.56.1 не затронуты (анализ компании по безопасности)
- Если определить нельзя, считайте затронутым (наше дополнение)
Если затронуты: считайте машину или среду CI скомпрометированной
В бюллетене сказано считать любой компьютер, где пакет установлен или запущен, полностью скомпрометированным и удалить пакет. Там предупреждают, что удаление может не убрать всё вредоносное ПО, появившееся при установке.
- Отключите машину от сети и, если возможно, пересоберите её. Одноразовые раннеры CI создайте заново
- Остальную работу делайте с другого, нескомпрометированного компьютера
Операторам узлов Swarm: создайте новый ключ и переведите средства
По анализу компании по безопасности, целью были файл конфигурации узла Bee (в нём пароль в открытом виде) и зашифрованный ключ кошелька. Её рекомендации:
- Считайте пароль и ключ кошелька украденными
- Создайте новый ключ на чистой машине и переведите на него средства, баланс чековой книжки и стейк
- Поищите закрепление, оставленное вредоносной программой (пользовательские записи автозапуска, программы удалённого управления). Переустановка приложения может его не убрать
Были ли ключи действительно украдены и были ли убытки, не опубликовано. Пока вы не убедитесь в обратном, безопаснее действовать так, будто они украдены (наша оценка).
Смените учётные данные: всё, до чего можно добраться с этой машины или из CI
В бюллетене сказано немедленно сменить все секреты и ключи, хранящиеся на машине, с другого компьютера. Список не приводится. Ниже — наше дополнение в соответствии с описанием компании по безопасности того, до чего мог добраться устанавливавший пользователь или задание CI.
- Токены npm и GitHub, облачные ключи, ключи SSH
- Секреты CI и краткоживущие облачные учётные данные, выдаваемые CI (через OIDC)
- Учётные данные, сохранённые в браузере или хранилище паролей этой машины
Если сначала настроить новые учётные данные, а потом отключать старые, простоя не будет (наше дополнение). Основы того, где хранить ключи, — в чем опасны файлы .env и API-ключи.
Зафиксируйте версии и переустановите
- 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
Как это читать: подробного сообщения самой Ethersphere найти не удалось
Затронутые версии и меры в этой статье взяты из бюллетеня GitHub и примечаний к выпуску Ethersphere. Сколько времени была доступна каждая версия, кто получил автообновление, что было целью и как злоупотребили процессом выпуска, взято из анализа компании по безопасности, а не от Ethersphere. По состоянию на 10 ноября 2026 года подробного сообщения от Ethersphere найти не удалось, поэтому мы перепишем текст, когда появятся официальные рекомендации.
Что произошло
Раздел основан на бюллетене GitHub, примечаниях к выпускам Ethersphere на GitHub и анализе компании по безопасности. Время указано по UTC, если не сказано иное; японское время — в скобках. Адреса связи вредоносной программы и значения файлов не приводятся.
6 ноября
По анализу компании по безопасности, прежние попытки извлечь секреты из репозиториев Ethersphere не удались, и компания со средней уверенностью оценила, что данные не были выгружены.Около 8 ноября
Был сделан вредоносный коммит. Показанная метка времени — 23:59, значение, которое можно задать произвольно (анализ компании по безопасности).9 ноября, 00:09 (09:09)
bee-js 13.3.0 появился в npm какlatest(анализ компании по безопасности).С 00:43 по 00:44 (с 09:43 по 09:44)
Автообновления Swarm Desktop 0.56.2 были предложены на Windows (x64) с 00:43, а на Apple Silicon с 00:44 (анализ компании по безопасности).01:24 (10:24)
npm удалил 13.3.0 примерно через 75 минут после появления (анализ компании по безопасности).Около 09:04–09:14 (18:04–18:14)
Тег Swarm Desktop 0.56.2 удалён, и выпуск перестал быть общедоступным примерно через 8,5 часа (анализ компании по безопасности).9 ноября
Опубликован бюллетень GitHub GHSA-hh7j-5m3j-23pf. Ethersphere выпустила Swarm Desktop 0.56.3, отметив в примечаниях, что он заменяет скомпрометированную 0.56.2.
- Затронуто (бюллетень)
- Только npm @ethersphere/bee-js 13.3.0. Исправленной версии нет. Тип: вредоносное ПО (внедрённый вредоносный код)
- Рекомендации пользователям (бюллетень)
- Считать полностью скомпрометированным любой компьютер, где он установлен или запущен. Удалить пакет. Удаление может убрать не всё. Немедленно сменить все секреты и ключи с другого компьютера
- Swarm Desktop (примечания Ethersphere)
- Версия 0.56.3, выпущенная 9 ноября, заменяет скомпрометированную 0.56.2. Других пояснений нет
- Охват распространения (анализ компании по безопасности)
- bee-js 13.3.0 в npm; Swarm Desktop 0.56.2 как выпуск на GitHub. Загрузчик, получающий и запускающий удалённый код, срабатывал при установке или при каждом запуске приложения. Пакеты Linux не обновлялись автоматически, но тоже были затронуты
- Что было целью (анализ компании по безопасности)
- Файл конфигурации узла Bee (с паролем в открытом виде) и его зашифрованный ключ кошелька, а также всё, до чего мог добраться устанавливавший пользователь или задание CI
- Процесс выпуска (анализ компании по безопасности)
- Захвачены две учётные записи GitHub (сопровождающего и автоматизации выпусков); происхождение не объясняется. Поскольку рабочий процесс публикации не проверял защищённую ветку, вредоносный код выполнялся внутри легитимного процесса публикации
- Ущерб
- В проверенных нами источниках сведений об украденных ключах или убытках не опубликовано
Что известно и чего пока нет
Состояние на 10 ноября 2026 года. Когда появятся новые данные, мы обновим столбец статуса.
| Пункт | Содержание | Статус |
|---|---|---|
| Затронутая версия 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.
Что пользователям пакетов стоит пересмотреть
Раздел не оценивает действия организации. Он ограничен тем, что пользователи могут сделать, чтобы подготовиться к следующему инциденту, исходя из опубликованного рассказа.
Не подтягивайте автоматически только что опубликованные версии
Вредоносная версия была в npm около 75 минут. Фиксация версий в файле блокировки, установка в CI строго по блокировке (например, npm ci) и использование только версий, опубликованных не менее заданного числа дней назад (minimumReleaseAge в pnpm, exclude-newer в uv и подобное), затрудняют получение версии, которую отзывают за считанные минуты. Подход рассмотрен в статье Защита от червей в цепочке поставок npm.
Разрешайте скрипты установки только нужным пакетам
По анализу компании по безопасности, вредоносная программа bee-js запускалась через скрипт установки. Если по умолчанию отключить скрипты установки для зависимостей (--ignore-scripts, список разрешённых в pnpm) и разрешать только необходимые, влияние такой компрометации уменьшится (наше дополнение).
Provenance не гарантирует безопасность
По анализу компании по безопасности, у npm-пакета были действительные подтверждения происхождения (provenance), потому что вредоносный код выполнялся внутри настоящего рабочего процесса публикации. Provenance показывает, где собран пакет, но не гарантирует безопасность содержимого (наше дополнение).
Не храните ключ кошелька и его пароль в открытом виде на одной машине
По анализу компании по безопасности, Swarm Desktop хранил пароль в файле конфигурации в открытом виде. Если держать ключи, под которыми лежат средства, отдельно от повседневной среды разработки, компрометация одного места с меньшей вероятностью прямо приведёт к средствам (наше дополнение).
Если вы публикуете пакеты: проверьте условия выпуска внутри рабочего процесса
Для сопровождающих анализ компании по безопасности рекомендует проверять внутри рабочего процесса публикации, что коммит находится в защищённой ветке, добавить обязательных рецензентов и ограничения тегов для сред публикации, не передавать секреты подписи рабочим процессам, выполняющимся в произвольных ветках, а токены бота выпусков сужать и менять. Если вы публикуете пакеты, проверьте то же самое.
Источники (открытые публикации)
Факты в этой статье взяты из открытых сведений ниже. Адреса вредоносной программы, имена файлов, хеши и другие значения индикаторов не приводятся.
- GitHub Advisory Database, «GHSA-hh7j-5m3j-23pf: Malware in @ethersphere/bee-js» (опубликовано 9 ноября 2026 года) — github.com
- Выпуски «swarm-desktop» Ethersphere на GitHub (v0.56.3, 9 ноября 2026 года; в примечаниях сказано, что он заменяет скомпрометированную 0.56.2) — github.com
- Выпуски «bee-js» Ethersphere на GitHub (проверено 10 ноября; последняя — v13.2.0) — github.com
- Анализ компании по безопасности «The bee-js and Swarm Desktop release compromise» (дополнительный источник; сколько времени была доступна каждая версия, автообновление, цели, злоупотребление процессом выпуска) — socket.dev
История обновлений
2026-11-10: первая версия. Основана на бюллетене GitHub (9 ноября 2026 года), примечаниях к выпускам Ethersphere на GitHub и анализе компании по безопасности. Подробного сообщения самой Ethersphere найти не удалось. Мы обновим статью, когда появятся официальные рекомендации.
Читайте далее
- Порядок отзыва украденных токенов: Защита от червей в цепочке поставок npm
- Инциденты того же рода: LiteLLM 1.107.0 распространял похититель учётных данных / Что делать, если вы используете Trivy в CI после компрометации цепочки поставок
- Где находятся секреты: Чем опасны файлы .env и API-ключи
- Аудит зависимостей: Аудит зависимостей с помощью OSV-Scanner
- Термины: Что такое вредоносное ПО / Что такое бэкдор
- Другие инциденты 2026 года: Утечки данных и кибератаки 2026 года