Свързана със Северна Корея хакерска група вече не разчита само на фалшиви интервюта за работа, а краде идентификационни данни на разработчици, за да вгражда зловреден софтуер в доверени софтуерни проекти.
Групата, проследявана под името DeceptiveDevelopment, е използвала откраднатия достъп, за да променя код в публични и частни хранилища в периода между април и септември 2026 г. Всеки компрометиран проект след това се превръща в нов входен вектор към системите на хората, които го използват.
Групата е известна от години с това, че подмамва разработчици чрез фалшиви специалисти по подбор на персонал и тестове по програмиране. В по-ранни кампании основната ѝ цел беше кражбата на криптовалутни портфейли и данни за вход, запазени в браузърите.
Новата активност е по-мащабна, тъй като един заразен разработчик вече може да изложи на риск десетки или дори стотици други потребители.
Изследователите отбелязват, че тази промяна показва колко високо севернокорейските групи ценят компютрите на разработчиците. Един-единствен лаптоп често съдържа данни за достъп до Git, ключове за облачни услуги и права за публикуване на пакети. Това е далеч по-полезно за един киберпрестъпник от една открадната парола.
Анализаторите от ESET отбелязват тази промяна в своя доклад за активността на APT групите (APT Activity Report), който обхваща периода от април до септември 2026 г. и беше публикуван на 28 октомври в WeLiveSecurity.
Севернокорейски хакери крадат идентификационни данни на разработчици
В доклада се посочва, че групата е преминала от примамки с фалшиви интервюта за работа към по-широки компрометирания на веригата за доставки на софтуер. Изследователите от ESET са установили, че атаката все още започва с примамка, като например фалшива задача за наемане на работа, която изисква от разработчика да стартира даден проект.
Същият трик беше описан и при фалшиви предизвикателства за интервюта за работа, насочени към програмисти на свободна практика. След като разработчикът стартира файла, зловредният софтуер претърсва компютъра за идентификационни данни за Git, SSH ключове и токени за достъп.
Атакуващите ги използват, за да влязат от името на разработчика и да добавят злонамерен код в собствените хранилища на жертвата. Те често пренаписват историята на промените (commit history) след това, което помага да скрият модификациите си от колегите в екипа, които проверяват журнала на проекта.
След това заразените файлове се разпространяват чрез платформите, на които разработчиците имат най-голямо доверие. ESET са открили засегнати елементи в npm, огледалния сървър за Go модули (Go module mirror), Packagist, PyPI и магазините за разширения за браузъри. Повечето от засегнатите проекти са малки инструменти, поддържани от отделни разработчици.
Това предполага, че разпространението е било автоматизирано, а не внимателно подбрано, като всеки компрометиран проект се е превърнал в нова входна точка за всеки, който го изтегли.

В края на няколко вериги на заразяване ESET са открили два основни инструмента. Първият е OmniStealer – написан на Python зловреден софтуер за кражба на информация (infostealer), който работи на няколко операционни системи и се обновява често.
Той атакува данни за вход в браузъри, крипто портфейли, мениджъри на пароли и тайни ключове на разработчици. Вторият е DEV#POPPER – троянски кон за отдалечен достъп (RAT), написан на Node.js.
По-ранни проучвания върху DEV#POPPER показаха, че той може да записва натиснатите клавиши и да изпълнява отдалечени команди. Новите версии добавят своя код към приложения, които разработчиците отварят всеки ден, включително VS Code, Cursor и Discord, така че зловредният софтуер се стартира отново при всяко отваряне на някое от тях.
Блокчейн трикове и трудна за премахване инфраструктура
Групата е работила и върху това да направи сървърите си по-трудни за спиране. ESET са изследвали npm пакети, които използват метод, публично наричан NullReceiver.
Зареждащият модул (loader) проверява последната транзакция от твърдо кодиран Ethereum адрес. След това прочита IP адреса на командния сървър от адреса на получателя на иначе празен превод. Кампания в npm, използваща NullReceiver и докладвана по-рано тази година, прилагаше същата идея.
Това дава на атакуващите голямо предимство. Те могат да превключат към нов сървър само с една нова транзакция и не се налага да обновяват нито един пакет.
Записите в блокчейна също така не могат да бъдат свалени. ESET са открили този метод и вътре в компрометирано хранилище, притежавано от реален разработчик и стартирано чрез скрита задача във VS Code.
Според проследяването на ESET това е първият случай на базирано на блокчейн търсене на сървър, вградено директно в проект, хостван в GitHub. Хакерите също така са преместили своите примамки и зловреден код към услуги, които са по-трудни за премахване.
Фалшивите Web3 задачи по програмиране от ранния етап на атаката са били разположени в Gitea – алтернатива на GitHub, която потребителите могат да хостват сами, така че няма централен екип, на когото да бъдат докладвани.
По-късен зловреден код е бил съхраняван в JSONBin.io, JSONHosting и Pinata – шлюз към мрежата IPFS. В IPFS файловете се намират по тяхното съдържание, така че закриването на акаунт невинаги премахва самия файл.
ESET заключава, че групата е използвала тези шест месеца, за да достигне до повече жертви и да направи свалянето на инфраструктурата си по-малко болезнено. По-широк поглед върху командните сървъри, базирани на блокчейн, показва, че и други групи копират този подход.
Разработчиците могат да намалят риска с няколко навика. Никога не стартирайте код от специалист по подбор на персонал на основната си работна машина. Подменяйте Git токените, SSH ключовете и ключовете за публикуване на пакети след всяко съмнение за заразяване. Преглеждайте скорошните промени (commits) за пренаписана история. Също така приемайте неочаквания блокчейн трафик от системите за компилиране като предупредителен знак.
Индикатори за компрометиране (IoCs):-
| Тип | Индикатор | Роля в кампанията |
|---|---|---|
| Техника | NullReceiver | Прочита IP адреса на сървъра от адреса на получателя в Ethereum транзакция |
| Зловреден софтуер | OmniStealer | Написан на Python софтуер за кражба на информация (infostealer) за данни от браузъри, портфейли, мениджъри на пароли и тайни на разработчици |
| Зловреден софтуер | DEV#POPPER RAT | Троянски кон за отдалечен достъп на Node.js, който поддържа устойчивост във VS Code, Cursor и Discord |
| Устойчивост | Скрита задача във VS Code | Стартира веригата за търсене в блокчейна от компрометирано хранилище |
| Хостинг услуга | Gitea | Хоства фалшиви Web3 задачи по програмиране |
| Хостинг услуга | JSONBin.io, JSONHosting | Хостват данни със зловреден код от по-късен етап |
| Хостинг услуга | Pinata (IPFS шлюз) | Хоства зловреден код, който е труден за премахване |
| Целеви платформи | npm, Go module mirror, Packagist, PyPI, магазини за разширения за браузъри | Канали, използвани за разпространение на заразен код |
Забележка: IP адресите и домейните са умишлено обезвредени (напр. [.]), за да се предотврати случайно зареждане или превръщане в активни връзки. Възстановявайте ги само в рамките на контролирани платформи за разузнаване на заплахи като MISP, VirusTotal или вашата SIEM система.