Софтуерни разработчици са обект на атаки с фалшиви оферти за работа, които превръщат рутинни тестове за програмиране в път за заразяване с малуеър за отдалечен достъп.

Кампанията използва фалшиви профили на рекрутъри в LinkedIn и други платформи за работа, за да доставя проекти, които изглеждат достатъчно безопасни за стартиране. Операцията се приписва на свързаната с Иран група Mirage Kitten, известна още като UNC1549.

Тя доставя NodeRabbit и PollCat — два новодокументирани троянци за отдалечен достъп (RAT), които работят под Windows, Linux и macOS, излагайки на риск ценни работни станции на софтуерни инженери.

PolySwarm съобщава в доклад, споделен с Cyber Security News (CSN), че кампанията е засегнала организации във финтех сектора, авиацията и аерокосмическата индустрия.

Анализаторите отбелязват жертви в Египет, Етиопия и Афганистан, докато подадените зловредни архиви показват по-широко засягане. Тази заплаха е сериозна, тъй като разработчиците редовно изтеглят, преглеждат и стартират непознат код като част от процеса по кандидатстване за работа.

Успешното компрометиране може да даде на атакуващия опирателна точка върху машина, съдържаща изходен код, вътрешни хранилища, идентификационни данни и достъп до корпоративни услуги. Групата използва познат подход на социално инженерство, но фокусът върху разработчиците повишава залозите.

Хакери използват фалшиви оферти за работа в LinkedIn

Атаката започва с убедителен профил на рекрутър и покана за преминаване на техническа оценка. Един от наблюдаваните архиви, Front-Technical-Challenge.zip, представя Express, React и Vite проект на име TaskFlow, заедно с README файл, който насочва кандидатите да отстранят дефекти във фронтенда.

Инструкциите твърдят, че server.js е безопасен и не трябва да се променя. Вместо това първият му ред импортира colorized_terminal версия 2.1.0 — зловреден пакет, пакетиран директно в node_modules, вместо да бъде изтеглен от npm. Зареждането му стартира NodeRabbit от скрит кеш път.

Примамката дава на получателите три часа за отговор и ги кара да не използват AI асистенти, упражнявайки натиск, който възпрепятства внимателния преглед.

Това подражава на по-ранни атаки с фалшиви предизвикателства за интервю за работа, където нормално изглеждаща оценка се превръща в механизъм за доставка вместо съмнително изпълнимо съобщение.

Отделно React-базирано предизвикателство, RankChallenge-react, носи PollCat и показва екран за еднократна парола, контролиран от атакуващия.

Зловредният код може да се регистрира в инфраструктурата за командване и контрол (C2) и да започне да изпраща запитвания за инструкции, докато приложението се зарежда, дори ако кандидатът никога не се е автентикирал.

Инструментите за разработчици се превръщат в пътища за персистентност

NodeRabbit събира подробности за хоста и мрежата, изброява процеси, изпълнява шел команди и манипулира файлове.

По-новите версии проверяват за среди за анализ, разпознават корпоративни прокси настройки и могат да сменят активните си командни сървъри, което прави зловредния код по-устойчив в корпоративни мрежи.

Неговият трети вариант се разширява до 23 команди и търси Outlook адреси, монтирани дискове, развойни проекти и Git хранилища.

Той може да създаде зловредно разширение за Visual Studio Code, маскирано като GitHub Copilot Helper, и след това да се опита да стартира инжектирания код след отваряне на редактора.

Зловредният код може също да постави стартер в Git post-merge или post-checkout куки (hooks), така че обичайната активност в хранилището да може да го рестартира.

Използването на доверени работни процеси наподобява рисковете, подчертани при атаките срещу веригата за доставки с binding.gyp, където пренебрегнати проектни файлове могат да задействат вреден код.

PollCat осигурява трансфер на файлове, инвентаризация на системата, скрито изпълнение на процеси, шел достъп и изпълнение на произволен JavaScript код.

Той установява персистентност чрез планирани задачи (scheduled tasks) в Windows, cron записи в Linux и cron или LaunchAgent механизми в macOS, като същевременно проверява за следи от продукти за сигурност.

Разработчиците трябва независимо да потвърждават рекрутърите и обявите за работа чрез официалните канали на компанията, преди да отворят даден тест.

Те трябва да преглеждат всяка зависимост и скрит проектен файл, да избягват стартирането на непоискан код на основната си работна станция и да използват изолирана среда за легитимни оценки.

Екипите по сигурност трябва да наблюдават крайните устройства на разработчиците за необичайна Node.js активност, новосъздадени разширения за редактори и ненадейни промени в Git куките.

Прегледът на съмнителни дървета със зависимости и ограничаването на достъпа до изходните хранилища могат да помогнат за намаляване на риска, особено когато зловредни npm пакети таргетират разработчиците чрез познати инструменти.

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

Внимателният преглед на кода, проверките на самоличността и разделянето на задачите за интервю от корпоративните системи дават на разработчиците по-добър шанс да спрат тези атаки, преди троянец за отдалечен достъп (RAT) да се установи в системата.

Индикатори за компрометиране (IoCs):-

ТипИндикаторОписание
SHA-256123289b3680c1d693db0e3702137cc55862dbe8b9a34376bcdf08bd0514b98e7Проба, свързана с NodeRabbit, идентифицирана от PolySwarm
SHA-256307ce2448211a5f5d122643f2a739aff33ede72c1858518c8de098f3148bbd00Проба, свързана с NodeRabbit, идентифицирана от PolySwarm

Забележка: IP адресите и домейните са нарочно неутрализирани (напр. [.]), за да се предотврати случайно разрешаване на имена или създаване на хипервръзки. Възстановете ги само в рамките на контролирани платформи за разузнаване на заплахи като MISP, VirusTotal или вашата SIEM система.