- Регистрация
- Окт 17, 2022
- Сообщения
- 870
- Реакции
- 91
- Награды
- 1
Атакующий фреймворк Miasma, предназначенный для кражи учетных данных и недавно нацеленный на экосистемы с открытым исходным кодом посредством атак на цепочки поставок, был ненадолго опубликован в открытом доступе на GitHub.
Похоже, Miasma — это эволюция более раннего червя Shai-Hulud, информация о котором ранее просочилась на GitHub, и он имеет много общих черт с предыдущими версиями, методами и даже кодом.
Вредоносная программа заражает компьютер разработчика, крадет среду сборки и учетные данные облачного сервиса, а затем использует их для компрометации легитимных репозиториев и пакетов, публикуя троянизированные версии для заражения разработчиков, работающих с другими системами, и повторяя цикл.
Этот автономный, червеобразный механизм самораспространения может быстро расширить зону своего действия, потенциально превратив единичный случай взлома в масштабную атаку на цепочку поставок.
Ранее это вредоносное ПО связывали с громкими атаками на пакеты npm от Red Hat , а совсем недавно — на 73 репозитория Microsoft на GitHub .
Вчера исследователи из SafeDep сообщили , что исходный код Miasma был слит на GitHub через многочисленные взломанные учетные записи разработчиков. В каждой из этих учетных записей злоумышленники опубликовали исходный код в репозитории под названием "Miasma-Open-Source-Release".
Это указывает на то, что злоумышленники намеренно опубликовали исходный код, а не это была случайная утечка, как это произошло ранее с кодом Шаи-Хулуда.
Источник: SafeDep
Анализ кода показал, что для работы инструментария не требуется инфраструктура управления и контроля (C2), поскольку для этой цели он использует GitHub.

Эта платформа собирает учетные данные от облачных провайдеров, систем CI/CD, менеджеров паролей, Kubernetes и хранилищ секретов, а затем использует их для компрометации пакетов npm, PyPI и RubyGems, а также репозиториев GitHub, рабочих процессов Actions и экземпляров JFrog Artifactory.
Она также может распространяться по сети через SSH и AWS Systems Manager (SSM) и вводить в заблуждение пользователей при настройке инструментов ИИ, таких как Claude, Gemini, Cursor, Copilot, Kiro и Cline.
Источник: SafeDep
Одна из интересных особенностей, обнаруженных в просочившемся исходном коде Miasma, — это «аварийный выключатель», который устанавливается, когда вредоносная программа использует украденный токен GitHub жертвы в качестве канала для утечки данных.
Компонент отслеживает действительность токена каждую минуту и, если он аннулирован, выполняет команду, приводящую к его аннулированию. rm -rf ~/; rm -rf ~/Documents), рекурсивно удаляя файлы и каталоги в домашней папке пользователя и папке «Документы».
Монитор запускается как пользовательская служба systemd в Linux или как LaunchAgent в macOS и остается активным до 72 часов.
Ещё одним интересным аспектом, который был выявлен, является пятиэтапный конвейер сборки, генерирующий уникальные полезные нагрузки для каждой сборки.
Компания SafeDep сообщает, что этот процесс сочетает в себе шифрование встроенных ресурсов с помощью AES-256-GCM для каждого файла, обфускацию случайных строк, преобразование исходного кода, обфускацию JavaScript и самораспаковывающийся загрузчик, который упаковывает конечный полезный груз в три уровня шифрования.
Использование случайных ключей и рандомизированного внешнего слоя кодирования гарантирует, что каждый сгенерированный образец будет отличаться от предыдущих сборок, что затрудняет обнаружение на основе сигнатур и статический анализ.
Утечка информации о Shai Hulud привела к выпуску более продвинутых вариантов, таких как Miasma, и к увеличению числа атак . Аналогичным образом, ожидается, что утечка исходного кода Miasma окажет схожее воздействие, поскольку злоумышленники переймут этот код и будут вносить в него дальнейшие изменения.
Это может иметь серьезные последствия для безопасности экосистемы открытого исходного кода, поскольку атаки на цепочки поставок продолжают нацеливаться на нее с беспрецедентной скоростью.
Разработчикам программного обеспечения рекомендуется фиксировать зависимости проекта, вводить многодневные задержки перед внедрением обновлений пакетов и проверять новые сборки в изолированных тестовых средах.

