strutil-core 1.0.1 крадёт учётные данные при установке
Вредоносный RubyGem strutil-core версии 1.0.1 запускает при установке полезную нагрузку размером 5,48 МБ, которая крадёт учётные данные и передаёт их на paleasbest.top, а при сбое использует GitHub и GitLab. Пакет удалили с RubyGems примерно через пять часов после публикации. О случаях заражения конечных пользователей или зависимых пакетов не сообщалось.
Установка и сбор учётных данных
Файл extconf.rb загружает среду выполнения Bun в каталог /tmp и запускает index.js. Приложениям не требуется загружать gem, чтобы код выполнился. Версия 1.0.0, опубликованная тем же аккаунтом менее чем за два часа до этого, при проверке в песочнице вредоносного поведения не проявляла.
Полезная нагрузка ищет учётные данные в файлах и переменных окружения, связанных с облачными провайдерами, реестрами пакетов, хостами Git, SSH, контейнерами, Kubernetes, Vault, хранилищами паролей, криптовалютными кошельками и инструментами ИИ для написания кода.
На раннерах GitHub Actions вредоносная программа может читать память процессов через /proc, отключать StepSecurity Harden-Runner, а также менять привилегии раннера и сетевые настройки.
Распространение и закрепление
Червь содержит подпрограммы для повторной публикации вредоносных пакетов в RubyGems, npm и PyPI, а также для распространения через Artifactory, GitHub, GitLab и SSH. Он устанавливает бэкдор на Python в виде пользовательского сервиса systemd или LaunchAgent в macOS. Бэкдор периодически проверяет публичные коммиты в GitHub на наличие маркера и запускает скрипты по URL, прошедшим проверку подписи. Подпись охватывает URL, но не загруженный скрипт.
Вредоносная программа также может менять репозитории и локальные конфигурации, добавляя определения серверов MCP, хуки, инструкции для агентов и задачи IDE, которые могут запускать код. Отдельный механизм закрепления сохраняет украденный токен GitHub и следит за его действительностью. Если токен начинает получать ответы HTTP 401 или 403, монитор удаляет домашний каталог пользователя.
Пакет квалифицирован как более поздняя сборка червя testmetest из семейства Miasma, связанного с публично выпущенным набором инструментов Shai-Hulud. Общий код не подтверждает, что за атаками стоят одни и те же операторы.
Анализ возможностей червя проводился преимущественно статическими методами. Проверка в песочнице подтвердила выполнение кода при установке и доступ к файлам с учётными данными.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



