Севернокорейските киберпрестъпници, свързани с кампанията Contagious Interview, бяха забелязани да публикуват 108 уникални пакета и разширения за уеб браузъри, обхващащи npm, Packagist, Go и Google Chrome, като част от продължаваща активност, наречена PolinRider.

„Кампанията остава активна и е вероятно да продължат да се появяват нови зловредни пакети, тъй като хакерите компрометират акаунти на разработчици, променят легитимни хранилища и публикуват инфектирани версии на пакети, за които запазват или получават достъп до регистрите“, споделя изследователят по сигурността от Socket Карло Занки в анализ, публикуван тази седмица.

Общо 162-те зловредни версии обхващат множество издания, съответстващи на 108 уникални пакета и разширения, включително 19 npm библиотеки, 10 Composer пакета, 61 Go модула и едно разширение за Google Chrome.

Contagious Interview е името на кампания, съгласувана със Северна Корея, която използва като оръжие процесите по подбор на персонал, за да се насочи към софтуерни разработчици и лица, работещи в секторите на криптовалутите. Тя използва убедителни интервюта за работа и тестови задачи, за да ги подмами да изпълнят зловреден код.

Тази дейност е активна поне от 2023 г. Нападателите се представят за специалисти по подбор на персонал или сътрудници в платформи като LinkedIn, GitHub или сайтове за фрийланс, като често създават сложни фиктивни компании и генерирани с изкуствен интелект профили на служители, за да изградят доверие и в крайна сметка да доставят зловреден софтуер.

PolinRider беше маркирана за първи път от екипа на OpenSourceMalware през март 2026 г. Тогава бе описано, че хакерите внедряват зловредни обфускирани JavaScript кодове в стотици публични хранилища в GitHub, принадлежащи на няколко уникални собственици, с цел да доставят нов вариант на BeaverTail – известен JavaScript зловреден софтуер, свързан с Contagious Interview.

Към 11 април 2026 г. дейността е компрометирала 1951 публични хранилища в GitHub, свързани с 1047 уникални собственици, като същевременно се е сляла с друга група от атаки, наречена TaskJacker. Тя добавя зловредни файлове със задачи за VS Code (VS Code task files) в съществуващите хранилища на потребителите в GitHub. Тези задачи за VS Code включват опцията "runOn: 'folderOpen'", за да задействат изпълнението на произволен код веднага щом папката бъде отворена като работно пространство (workspace) в среди за разработка като VS Code или Cursor.

„Нападателите не използват откраднати идентификационни данни за GitHub“, посочват от OpenSourceMalware. „Вместо това жертвите са били компрометирани чрез зловредно разширение за VS Code или npm пакет.“ Вярва се, че нападателите превземат акаунтите на поддържащите пакетите разработчици (maintainers), вероятно чрез превземане на изтекли домейни или други методи за възстановяване на акаунти.

След като бъде изпълнен, зловредният софтуер търси в заразения компютър определени файлове като postcss.config.mjs, tailwind.config.js, eslint.config.mjs, next.config.mjs, babel.config.js и app.js, и ако ги намери, добавя зловреден JavaScript код към тях.

Той също така използва Windows batch скрипт за скрито модифициране на последното подаване на код (commit), правейки го да изглежда така, сякаш е направено от оригиналния автор. Подозира се, че подобни инструменти се използват за пренаписване на Git историята и за други операционни системи като Linux и macOS.

„Основният модел на атака остава последователен по време на кампанията: хакерите поставят обфускирани JavaScript зареждащи модули (loaders) в легитимни хранилища, прикриват кода чрез празни пространства (whitespace padding) или фалшиви .woff2 шрифтови файлове и задействат изпълнението чрез инструменти на разработчика, като например файлове със задачи за VS Code“, казват от Socket.

В последната вълна зловредният софтуер функционира като JavaScript модул за зареждане на зловреден софтуер (loader), който се свързва с блокчейн инфраструктура (включително TRON, Aptos и BNB Smart Chain услуги), за да изтегли криптиран зловреден код от втори етап, който след това се разархивира до DEV#POPPER RAT и OmniStealer. Тази верига на атака беше детайлизирана от eSentire през март 2026 г.

„Нападателите използват пренаписване на Git историята, включително форсирано изпращане (force pushes) и антидатирани коммити, за да направят зловредните промени да изглеждат по-стари и по-малко подозрителни“, обяснява Занки. „Това прави началната страница на GitHub и видимата история на промените ненадеждни индикатори за компрометиране. Защитниците трябва да преглеждат логовете за активност на хранилищата, метаданните за версиите на пакетите, конфигурацията на задачите във VS Code и подозрителните промени в конфигурационните файлове.“

Това развитие идва в момент, когато JFrog разкри група от npm пакети, свързани с Contagious Interview, някои от които са маскирани като инструменти за полифил на Rollup с цел да позволят отдалечен достъп и кражба на данни. По-рано същата седмица беше идентифициран и друг набор от npm и Go пакети, които включват задачи за автоматично изпълнение във VS Code за стартиране на JavaScript кодове, маскирани като фалшиви файлове с шрифтове, което показва тактически припокривания между Fake Font, TaskJacker и PolinRider.

Потребителите, които са инсталирали тези пакети, трябва да третират средата си като компрометирана, да сменят изложените пароли и ключове (secrets) от чиста машина, да премахнат засегнатите версии, да изградят проектите си наново от сигурен lockfile и да проверят работните станции на разработчиците и хранилищата за скрити пътища за изпълнение на код или подозрителни промени във файловете:

  • .vscode/tasks.json
  • config.js
  • vite.config.js
  • eslint.config.js