Зловредни пакети в Node Package Manager (npm) и Python Package Index (PyPI) доставят софтуер за кражба на данни (stealer malware) на разработчици и потребители на приложения за плащания на Paysafe, Skrill и Neteller.
Извършителят е публикувал едновременно поне 17 зловредни пакета, всеки от които има за задача да извлича идентификационни данни и токени за достъп към сървър за управление и контрол (C&C), хостван в Amazon Web Services (AWS).
И трите платформи за плащания са популярни, като Paysafe се използва главно от сайтове за електронна търговия, онлайн пазари, платформи за игри, туристически бизнеси и доставчици на финансови или софтуерни услуги (SaaS). Skrill и Neteller са дигитални портфейли и услуги за парични преводи, използвани в онлайн залози, криптовалутни борси и платформи за Форекс търговия.
Разработчиците на софтуер, работещи по такива платформи, интегрират SDK на Paysafe в приложения и уебсайтове, за да внедрят сигурна система за плащания и управление на средства. Според компанията за сигурност на приложения Socket, тези разработчици са мишени на последната кампания чрез споменатите пакети.
Изследователите споделят, че 13-те npm пакета са публикували четири зловредни версии (от 1.0.0 до 1.0.3), докато PyPI пакетите са имали само една зловредна версия (1.0.0). Всичките 17 пакета се представят за легитимни SDK за плащания, като дори излагат очакваните API, но вместо това връщат фалшиви отговори за успех, вместо да комуникират с бекенд услугите на Paysafe.
Истинската цел е кражба на идентификационни данни, тъй като вграденият зловреден код претърсва компрометираните среди за тайни като токени, пароли и API ключове. Според Socket, извлечените данни включват API ключове на Paysafe, AWS ключове, GitHub токени, npm токени, име на хост, потребителско име и метаданни за използването на API.
Модулът за кражба на данни в npm пакетите се опитва да извлече информация само ако е наличен API ключ на Paysafe и се активира при извикване на фалшивия SDK. PyPI пакетите автоматично активират рутината за кражба при инициализация и изобщо не изискват наличието на API ключ на Paysafe.
Анализът на Socket разкрива, че зловредният софтуер включва базови функции срещу анализ, като спира изпълнението си, ако открие по-малко от 2 процесорни ядра или ако името на хоста или потребителското име съдържа индикации за виртуализирана среда.
Не е ясно кой стои зад тази кампания, но докладът на Socket подчертава някои атрибути, които предполагат, че атакуващият е технически грамотен и може да се завърне по по-организиран начин. Изследователите предупреждават, че способността на атакуващия да се движи между различни екосистеми може да затрудни защитата, ако има видимост само върху една от тях.
Ако някой от изброените пакети е бил инсталиран, на разработчиците се препоръчва незабавно да променят/заменят всички тайни на всяка машина, която е импортирала или изпълнила пакета. Съветва се също така да се претърсят дърветата с зависимости за имената на пакетите и да се блокират заявките към тях на ниво прокси на регистъра, както и да се проверят логовете на системите за непрекъсната интеграция (CI) за PAYSAFE_API_KEY в комбинация с някое от имената на пакетите.