Команда дослідників кібербезпеки Veracode виявила критичну загрозу в екосистемі npm – шкідливий пакет os-info-checker-es6, який демонструє безпрецедентний рівень складності в маскуванні зловмисного коду. За останній місяць пакет завантажили понад 1000 розробників, що створює значний ризик для безпеки програмних проектів.
Технічний аналіз еволюції загрози
Початкова версія пакету, випущена 19 березня, виконувала легітимні функції збору системної інформації. Критичні зміни з’явились у версії 1.0.8 від 7 травня, де розробники виявили складний механізм доставки шкідливого навантаження. Зловмисники впровадили платформо-залежні бінарні файли та обфусковані інсталяційні скрипти, що суттєво ускладнило виявлення загрози стандартними засобами захисту.
Інноваційні методи приховування коду
Особливу увагу експертів привернув унікальний метод стеганографії, що використовує невидимі Unicode-символи з діапазону Variation Selectors Supplement. Зловмисники застосували ці модифікатори, призначені для варіацій гліфів у складних системах письма, для маскування шкідливого коду після символу «|». Такий підхід дозволив успішно обходити більшість систем виявлення загроз.
Аналіз інфраструктури керування
Дослідження виявило багаторівневу систему Command & Control, що використовує Google Calendar як проміжний сервер. Механізм отримує закодовані в base64 URL-адреси через атрибути data-base-title календарних подій, що значно ускладнює виявлення та блокування шкідливої активності традиційними засобами захисту.
Пов’язані загрози та вектори атак
Фахівці ідентифікували чотири додаткових пакети, що мають залежності від os-info-checker-es6: skip-tot, vue-dev-serverr, vue-dummyy та vue-bit. Хоча ці компоненти маскуються під інструменти розробки, їх зв’язок з основною шкідливою кампанією потребує додаткового розслідування.
Для захисту від виявленої загрози рекомендується негайно перевірити проекти на наличність вказаних залежностей та видалити їх. Цей інцидент підкреслює критичну важливість впровадження автоматизованого аналізу безпеки сторонніх компонентів та регулярного аудиту залежностей у процесі розробки програмного забезпечення. Організаціям варто посилити моніторинг npm-пакетів та впровадити багаторівневу систему перевірки коду перед його інтеграцією у виробничі системи.