
Последние пару месяцев злоумышленник распространял трояны с нескольких npm-учеток: alex05255, mdrafiqulislamrabby, b.w1001, abdev8773 и mollspotwood54400.
Список пакетов:
svg-fetchertradepilotpolytradepolymarket-kitreact-svg-chunkgamified-trading-systemfont-hugefont-hubmdb-viterouter-processorroute-processor
Код, по классике жанра, навайбкожен. На это указывают избыточные поясняющие комментарии:


Логика пакетов
? Конкатенация URL C2 из нескольких констант.
? Запрос следующего стейджа. Из занятного:
Нагрузка версионируется и в коде называется
token. Нам известны стейджи106,107,108и116.
Итоговый URL: http://svganchordev.net/icons/<token>
Код передает в заголовках ключ
bearrtoken(орфография сохранена, вероятно, автор имел в видуbearertoken) со значениемlogo.
Второй стейдж представлен сильно обфусцированным JS-кодом-однострочником:

Стейдж собирает информацию о системе — имя пользователя, имя компьютера, операционную систему — и посредством веб-сокета продолжает общение, принимая команды на исполнение.
Реализация качественная, с мультистейджами, спору нет. Но это все равно вредоносная активность, поэтому репортим пакеты админам NPM.
В релизах с токенами 106 и 116 есть изюминка, а именно вшитые публичный и приватный ключи GitLab:

Мы не можем воспользоваться этими ключами: они относятся к приватному инстансу GitLab, развернутому в инфраструктуре злоумышленника.
Однако интересно, что кампания ведется на настолько серьезном уровне, что злоумышленнику потребовалось версионирование кода, хотя можно было бы использовать Git локально. Можно предположить, что в GitLab настроен CI/CD-пайплайн для обфускации кода и публикации стейджей.
Хотите автоматически проверять, попали ли эти и другие вредоносные пакеты в ваш контур? Вам сюда: фиды для безопасной разработки из PT Fusion.
(Источник: https://t.me/ptescalator)