Неизвестные опубликовали исходный код червя Miasma, и тот атаковал GitHub
Читать в полной версииВирус Miasma стал распространяться как лесной пожар — неизвестные злоумышленники опубликовали его исходный код, дав возможность любому желающему модифицировать его и использовать в собственных целях.
Источник изображения: Kevin Ku / unsplash.com
В минувший понедельник, 8 июня, стали появляться вредоносные репозитории под названием «Miasma-Open-Source-Release». Администрация GitHub удаляет их, но эксперты SafeDep успели изучить один из проектов и установить, что это больше чем червь для атаки на цепочку поставок. Он позволяет оператору осуществлять «различные атаки с использованием украденных учётных данных против произвольных и целевых пакетов на общедоступных платформах, в том числе PyPI, npm, RubyGems, JFrog Artifactory, а также в репозиториях GitHub и механизмах GitHub Actions, отравлять конфигурации средств программирования с искусственным интеллектом, горизонтально перемещаться по SSH и осуществлять другие векторы атак».
Первой подобный «подвиг» совершила хакерская группировка TeamPCP, которая открыла исходный код миничервя Shai-Hulud и объявила конкурс на проведение атак на цепочки поставок. Действующий схожим образом червь Miasma начал с того, что заразил более сотни проектов Red Hat и Microsoft, после чего начал распространяться на других жертв — по состоянию на вторник эксперты Socket отследили 473 поражённых пакета. Исходный код Miasma опубликован от имени четырёх пользователей, ранее подвергшихся взлому. С момента публикации исходного кода не удалось зафиксировать фактов использования Miasma в качестве оружия.
Источник изображения: Philipp Katzenberger / unsplash.com
Интересной особенностью обоих этих червей является то, что для их работы не требуется запускать отдельный сервер для управления и контроля (C2) — все соответствующие функции реализуются штатными средствами платформы GitHub. В итоге службе безопасности «приходится работать ближе к протоколу приложения, чтобы выявлять поведенческие, а не сетевые аномалии».
Управляющие команды прячутся в публичных коммитах GitHub, которые обнаруживаются штатными средствами поиска по специальным меткам. Метке «DontRevokeOrItGoesBoom» сопутствует принадлежащий злоумышленнику персональный токен доступа (PAT), зашифрованный с помощью AES-256-CBC — эти данные используются для отправки похищенных червём учётных данных и другой конфиденциальной информации. Метке «TheBeautifulSandsOfTime» сопутствует код JavaScript, который проверяется один раз при запуске и после проверки полезная нагрузка выполняется через eval() — функцию, которая запускает выполнение текстовой строки как кода. Наконец, c меткой «firedalazer» поставляются URL-адреса скриптов на Python для осуществления мониторинга. Все три канала доступны без авторизации, используют общедоступный API поиска коммитов на GitHub, а также разные ключи проверки и расшифровки, то есть компрометация одного не даёт возможности скомпрометировать два других.