В крупных репозиториях кода, таких как npm, GitHub и jsDelivr, были обнаружены троянизированные версии jQuery. Это часть сложной и устойчивой атаки на цепочку поставок, которая заставляет сообщество разработчиков быть настороже.
Аналитики из компании Phylum, специализирующейся на кибербезопасности, опубликовали анализ, согласно которому вредоносное ПО было тщательно скрыто в редко используемой функции 'end' библиотеки jQuery. Эта функция вызывается внутренне более популярной функцией 'fadeTo', входящей в набор утилит для анимации.
С 26 мая по 23 июня 2024 года на регистр npm было загружено до 68 пакетов, имена которых варьировались от cdnjquery до sytlesheets. Кажется, что каждый из этих пакетов был вручную собран и опубликован, что отличает данную атаку от других, где злоумышленники часто используют автоматизацию для создания и публикации пакетов.
Особое внимание заслуживает метод внедрения вредоносного кода: изменения были внесены в функцию "end", что позволяет злоумышленнику перехватывать данные форм на веб-сайтах и отправлять их на удалённый сервер.
Также было установлено, что троянизированный файл jQuery размещен в репозитории GitHub под учётной записью "indexsc". В этом же репозитории находятся JavaScript-файлы, содержащие скрипт, указывающий на модифицированную версию библиотеки.
Следует отметить, что jsDelivr автоматически создаёт такие URL-адреса GitHub, что, возможно, было использовано злоумышленником для придания законности источнику или для обхода брандмауэров, используя jsDelivr вместо прямой загрузки кода с GitHub.
Нажимая на кнопку, я даю Согласие на обработку персональных данных в соответствии с Политикой обработки.