Бессмертные бэкдоры: новая тактика атак на экосистему npm

Бессмертные бэкдоры: новая тактика атак на экосистему npm

Инновационный метод позволяет хакерам навсегда сохранить доступ к скомпрометированным системам.

image

Злоумышленники внедрили новую тактику в атаках на экосистему npm — два вредоносных пакета тайно модифицируют уже установленные на системе легитимные библиотеки, чтобы вшить обратную оболочку и обеспечить постоянный доступ к системе жертвы. Даже после удаления вредоносных пакетов бэкдор продолжает функционировать, поскольку скрыт в изменённой версии доверенного пакета.

О необычном способе компрометации сообщили специалисты Reversing Labs, исследовавшие открытые цепочки поставок ПО. Несмотря на то, что вредоносные библиотеки не получили широкого распространения, исследователи предупреждают об опасности, которую они представляют. По их словам, на npm время от времени появляются загрузчики вредоносов, хотя инфостилеры встречаются чаще. Однако в данном случае применена особенно изощрённая стратегия сокрытия вредоносной нагрузки, заслуживающая особого внимания.

Обнаруженные пакеты называются «ethers-provider2» и «ethers-providerz». Первый из них, который на момент публикации исследования всё ещё был доступен на npm, основан на популярной библиотеке «ssh2». Но в отличие от оригинала, в нём был изменён скрипт установки «install.js». После загрузки такой скрипт скачивает вторую фазу вредоносного кода из внешнего источника, исполняет её, а затем удаляет, стараясь не оставить следов.

Вторая стадия вредоносной программы отслеживает, установлен ли в системе популярный пакет «ethers». Если да — заменяет его файл provider-jsonrpc.js на модифицированную версию, в которую внедрён вредонос. Этот код, в свою очередь, подключается к удалённому хосту, откуда загружается третья стадия — полнофункциональная обратная оболочка. Её реализация основана на изменённом SSH-клиенте, маскирующемся под легитимное поведение библиотеки ssh2.

Главная угроза состоит в том, что удаление «ethers-provider2» не устраняет бэкдор — заражённый файл в библиотеке ethers остаётся активным. Это означает, что система пользователя остаётся скомпрометированной, даже если вредоносный модуль больше не установлен.

Второй вредонос, «ethers-providerz», работает по аналогичной схеме, но нацелен уже на другой популярный модуль — @ethersproject/providers. Он также внедряет вредоносную нагрузку в легитимную библиотеку и устанавливает обратную оболочку, указывающую на один и тот же IP-адрес злоумышленников — 5[.]199[.]166[.]1:31337.

По данным Reversing Labs, ранние версии «ethers-providerz» содержали ошибки в путях к файлам, из-за чего атака не срабатывала. Однако автор уже удалил пакет с npm, что может указывать на намерение доработать его и вновь опубликовать. Также в ходе расследования специалисты выявили два дополнительных пакета — «reproduction-hardhat» и «@theoretical123/providers», которые могут быть связаны с той же вредоносной кампанией.

Для обнаружения угроз Reversing Labs опубликовала YARA-правило, предназначенное для выявления известных компонентов вредоноса. Разработчикам рекомендуется проверить свои окружения и убедиться в отсутствии следов компрометации.

Аналитики подчёркивают важность проверки исходного кода и достоверности разработчиков при установке пакетов из публичных хранилищ, таких как npm или PyPI. Особое внимание стоит уделять запутанному коду, наличию внешних подключений и подозрительным действиям в установочных скриптах.

Взломают завтра? как математика предсказывает кибератаки

31 марта в 14:00 — SuperHardio Brothers* раскрывают, как превратить математическое моделирование времени атак в конкурентное преимущество вашей компании.

Реклама. АО «Позитив Текнолоджиз», ИНН 7718668887 *герои-эксперты харденинга