Пакетът jscrambler в npm беше компрометиран и самото инсталиране на неговата версия 8.14.0 стартира софтуер за кражба на информация (infostealer) на вашата машина. Публикувана на 11 юли 2026 г., зловредната версия съдържа preinstall кука (hook), която спуска и изпълнява компилиран binary файл, разработен за Windows, macOS и Linux.
Платформата Socket маркира изданието шест минути след публикуването му. Ако вие или някоя от вашите системи за автоматично компилиране (build системи) сте го изтеглили в този прозорец, зловредният код вече е изпълнен с правата, с които разполага самият инсталационен процес.
Нищо от това не присъства в предходната версия 8.13.0. Разликите в пакета показват два нови файла в директория dist/: setup.js (малък зареждач) и intro.js. Въпреки името си, intro.js не е JavaScript, а контейнер с размер около 7.8MB, съдържащ три gzip-компресирани изпълними файла за Linux, Windows и macOS.
При инсталация setup.js избира съответния файл за хост операционната система, записва го под случайно име в системната временна директория, маркира го като изпълним и го стартира фоново със скрит изходен поток.
Добавените файлове присъстват в публикувания пакет, но липсват в публичния изходен код на jscrambler. StepSecurity и SafeDep анализираха версията и докладваха, че в хранилището в GitHub липсва съответстващ commit, tag или pull request за 8.14.0.
Последният официален таг на проекта все още е 8.13.0. Версията е качена директно в npm през легитимен акаунт на поддържащ пакета (maintainer), заобикаляйки стандартния процес на одобрение. Това насочва към компрометиран npm акаунт или компрометиран build тръбопровод (pipeline), като все още не е установено кое от двете е причината.
Зловредният код представлява инфостийлър, написан на Rust, компилиран за трите платформи. Той претърсва машината на разработчика за тайни ключове и данни и ги изпраща към сървър за събиране на данни през TLS.
Списъкът с цели е широк и насочен към разработчици: облачни идентификационни данни от AWS, Azure и Google Cloud (включително метаданни от CI среди); криптовалутни портфейли и фрази за възстановяване от MetaMask, Phantom и Exodus; сейфове на мениджъра на пароли Bitwarden; съхранени в браузъра пароли и бисквитки; както и активни сесии за Discord, Slack, Telegram и Steam.
Той също така атакува и по-нови цели: конфигурационните файлове на AI инструменти за програмиране като Claude Desktop, Cursor, Windsurf, VS Code и Zed, където обикновено се съхраняват API ключове и идентификационни данни за Model Context Protocol (MCP) сървъри.
Изпълнимите файлове извършват и допълнителни действия. Под Linux зловредният софтуер се свързва с BPF библиотеката на ядрото и може да зареди eBPF програма директно в паметта на ядрото, което му осигурява сериозен отпечатък на системно ниво. Под Windows и macOS са добавени защити срещу дебъгване (anti-debugging) и механизми за персистентност след рестарт (скрита задача в Windows, изпълняваща се всяка минута, и LaunchAgent в macOS).
StepSecurity улови връзка на зловредния софтуер към два твърдо кодирани IP адреса и към Tor инфраструктурата.
Тъй като jscrambler е инструмент за компилиране, неговата компрометирана версия е опасна главно заради достъпа до чувствителни данни в CI/CD средите, а не толкова заради мащаба на свалянията (около 15 800 изтегляния седмично).
Настоящата версия 8.15.0 вече замени компрометираната в npm и не съдържа инсталационни скриптове или прикрепени binary файлове. Въпреки това версия 8.14.0 все още е налична в регистъра и всяка система, заключена към нея чрез lockfile, ще продължи да се заразява. Препоръчва се незабавно преминаване към 8.15.0 или връщане към стабилната 8.13.0.