Хакери са използвали 16 зловредни разширения за Firefox, за да вземат на прицел потребители на криптовалути с фалшиви екрани на портфейли, които прихващат фрази за възстановяване и частни ключове.

Добавките са се представяли за портали на портфейли, десктоп инструменти и браузърни помощни програми, докато скрит код е опитвал да изпраща тайните към контролирани от атакуващите Cloudflare Workers.

Кампанията е копирала интерфейси от Rabby Wallet и OKX Wallet, превръщайки познатите стъпки за импортиране на портфейл в капани. Mozilla е премахнала зловредните разширения от своя магазин до 5 октомври 2026 г.

Премахването обаче не защитава никого, който вече е въвел фраза за възстановяване или частен ключ в работеща версия. Изследователи от Socket.dev са идентифицирали зловредния софтуер и са публикували констатациите си на 7 октомври.

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

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

Предишната кампания за кражба на крипто портфейли през Firefox също е използвала фалшиви интерфейси на портфейли и Cloudflare Workers за събиране на тайни данни, показвайки как атакуващите могат да продължат да публикуват свързани пакети под променящи се имена.

Хакери използват фалшиви разширения за Firefox

Всеки клонинг на Rabby е съдържал 1 114 файла, включително екрани за импортиране на портфейл, код за управление на акаунти и интерфейси за транзакции.

Вместо да създадат проста фишинг страница, операторите са копирали цялостно приложение за портфейл и са добавили функции за кражба. Някои официални връзки към Rabby и настройки на услугата DeBank са запазени, помагайки на променения софтуер да изглежда по-убедително.

Откраднатият брандинг е бил последователно непрецизен: началният екран все още е показвал Rabby Wallet, докато други части са използвали грешно изписано име. По-важното е, че зловредните функции са били поставени директно след операциите по импортиране на частен ключ и фраза за възстановяване.

Те са приемали фрази от 12 или 24 думи и 64-знакови шестнадесетични частни ключове, копирайки същите тайни данни, които портфейлът е обработвал. Този подход се възползва от доверието в познатия екран, вместо да доказва недостатък в реалната услуга за портфейли.

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

Rabby Clone Interface (Source - Socket.dev)
Интерфейс на клонинг на Rabby (Източник – Socket.dev)

По-малките разширения са показвали интерфейс, изведен от OKX, под общ брандинг за портал. Тяхната форма за импортиране е проверявала за точно 12 или 24 думи, след което е предавала въведената фраза на фонов модул за обработка.

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

Тайните данни са изпращани през Cloudflare Workers

Клонингите на Rabby са изпращали тайните данни в GET заявки чрез URL адреси, с наличен втори метод за заявка, ако първият се провали. Това е изложило материала за възстановяване не само пред крайната точка на атакуващия, но и пред системи, които записват URL адресите на заявките.

Активните модули за обработка в стил OKX вместо това са изпращали необработени фрази в HTTPS POST заявки, съдържащи JSON данни. Един пакетиран фонов скрипт е предлагал три метода за изпращане: браузърен сигнал (beacon), POST заявка и резервен вариант с GET заявка на базата на изображение.

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

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

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

Всяко разширение е декларирало, че не събира данни, противоречейки на кода за обработка на тайни. Клонингите на Rabby също така са изисквали широк достъп до браузъра.

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

Легитимните домейни на Rabby и DeBank, запазени в пакетите, не са индикатори за кампанията. Всеки, който е въвел реална фраза или частен ключ в работещ вариант, трябва да счита портфейла си за компрометиран.

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

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

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

Полето, съдържащо тайни данни, трябва да бъде редактирано/заличено. Запазете съмнителните пакети за разследване, но не ги изпълнявайте на нормална работна станция на анализатор.

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

Мрежови и кодови индикатори

ТипИндикаторЦел
Мрежова крайна точкаhxxps://silent-wind-get[.]icy-star-f45c[.]workers[.]dev/Събиране на тайни данни от клонинг на Rabby
Мрежова крайна точкаhxxps://small-boat-969c[.]icy-star-f45c[.]workers[.]dev/Събиране на тайни данни в стил OKX
Мрежова крайна точкаhxxps://green-firefly-ab28[.]icy-star-f45c[.]workers[.]dev/Събиране на тайни данни в стил OKX
Мрежова крайна точкаhxxps://flat-wildflower-f954[.]fondationanimalaidrelief[.]workers[.]dev/Крайна точка, пакетирана в счупения вариант
Маркер на кампаниятаEQOx7EIPZSNiСподелен токен на кампанията
Фалшив брандингRaabby WaIIetНиз за откриване на клонинг на Rabby
Съобщение по време на изпълнениеSEED_PHRASE_IMPORTИзпращане на фраза за възстановяване
Съобщение по време на изпълнениеWALLET_SYNCНаследено съобщение, обработвано от кода за кражба