Командный интерфейс (CLI) Bitwarden был кратковременно скомпрометирован после того, как злоумышленники загрузили в npm вредоносный пакет @bitwarden/cli, содержащий код для кражи учетных данных разработчиков.
По данным Socket, JFrog и OX Security, вредоносная версия распространялась под номером 2026.4.0 и была доступна с 17:57 до 19:30 по восточному времени 22 апреля 2026 года, после чего ее удалили.
Bitwarden подтвердил инцидент и сообщил, что он затронул только канал распространения CLI через npm и только тех пользователей, которые успели установить вредоносную версию.
В компании заявили:
Расследование не выявило признаков того, что данные пользовательских хранилищ (vault) были затронуты или находились под угрозой, а также что производственные данные или системы были скомпрометированы. После обнаружения проблемы скомпрометированный доступ был отозван, вредоносный релиз npm помечен как устаревший, и сразу начаты меры по устранению последствий.
Проблема затронула механизм распространения CLI через npm в течение этого ограниченного периода, а не целостность легитимного кода Bitwarden CLI или сохраненных данных хранилища.
Компания сообщила, что отозвала скомпрометированный доступ и деактивировала затронутый релиз CLI в npm.
Атака на цепочку поставок Bitwarden
По данным Socket, злоумышленники, вероятно, использовали скомпрометированный GitHub Action в CI/CD-пайплайне Bitwarden, чтобы внедрить вредоносный код в npm-пакет CLI.
JFrog сообщает, что пакет был изменен таким образом, что скрипт preinstall и точка входа CLI использовали кастомный загрузчик bw_setup.js, который проверяет наличие среды выполнения Bun и, если она отсутствует, загружает ее.
Затем загрузчик с помощью Bun запускает обфусцированный файл JavaScript bw1.js, выполняющий роль вредоносного ПО для кражи учетных данных.
После запуска вредонос собирает широкий набор секретов с зараженных систем, включая:
- npm-токены
- токены аутентификации GitHub
- SSH-ключи
- облачные учетные данные для AWS, Azure и Google Cloud
Собранные данные шифруются с использованием AES-256-GCM и отправляются наружу путем создания публичных репозиториев на GitHub-аккаунте жертвы, где и сохраняются в зашифрованном виде.
По данным OX Security, такие репозитории содержат строку «Shai-Hulud: The Third Coming» — отсылку к предыдущим атакам на цепочку поставок npm, в которых использовался аналогичный метод и та же строка для вывода похищенных данных.
Угроза также обладает возможностями самораспространения. По данным OX Security, она может использовать украденные учетные данные npm, чтобы находить пакеты, к которым у жертвы есть доступ на изменение, и внедрять в них вредоносный код.
Socket также отметил, что полезная нагрузка нацелена на среды CI/CD и пытается собирать секреты, которые можно использовать для дальнейшего расширения атаки.
Инцидент произошел на фоне другой атаки на цепочку поставок, о которой накануне сообщила Checkmarx — она затронула Docker-образы KICS, GitHub Actions и расширения для разработчиков.
Точный способ получения доступа злоумышленниками неизвестен, однако Bitwarden сообщил, что инцидент связан с атакой на Checkmarx: скомпрометированный инструмент разработки позволил злоумышленникам злоупотребить каналом доставки CLI через npm в течение ограниченного времени.
Socket также сообщил о пересечении индикаторов компрометации между взломом Checkmarx и этой атакой.
Socket сообщает:
Связь прослеживается на уровне вредоносного ПО и инфраструктуры. В случае с Bitwarden вредоносная нагрузка использует тот же endpoint audit.checkmarx[.]cx/v1/telemetry, который фигурировал в инциденте с Checkmarx. Также применяется та же схема обфускации __decodeScrambled с seed 0x3039, и наблюдается тот же общий паттерн — кража учетных данных, их вывод через GitHub и распространение через цепочку поставок.
Это сходство не ограничивается поверхностными признаками. Вредонос Bitwarden содержит такие же встроенные компоненты gzip+base64, как и ранее обнаруженное ПО, включая инструменты для сбора учетных данных и их дальнейшего использования.
Обе кампании связывают с группировкой TeamPCP, которая ранее уже атаковала пакеты для разработчиков в масштабных атаках на цепочку поставок Trivy и LiteLLM.
Разработчикам, установившим затронутую версию, рекомендуется считать свои системы и учетные данные скомпрометированными и сменить все ключи доступа, особенно используемые в CI/CD-пайплайнах, облачных сервисах и средах разработки.