Нова SMS фишинг кампания превръща рутинна проверка на плащане в сесия за измама на живо. Жертвите, които натиснат връзка, стигат до убедителни страници, изискващи данни за карта, пароли и еднократни кодове за потвърждение (OTP), докато престъпниците виждат информацията в момента на нейното въвеждане.

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

Анализаторите от Group-IB идентифицираха фишинг комплекта JWR и свързаха активността с кластер от оператори, който проследяват под името Outsider в рамките на по-широката екосистема Smishing Triad.

От Group-IB заявяват в доклад, споделен с Cyber Security News (CSN), че кампанията комбинира еднократна инфраструктура с операторска конзола на живо, което позволява на измамниците да адаптират страницата, докато жертвата остава онлайн.

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

Смишинг хакерите могат да следят всяко натискане на клавиш

Комплектът JWR превръща фалшивата страница за плащане в двупосочен канал. Неговият код изпраща актуализирани данни от формата всеки път, когато наблюдавано поле се промени, което означава, че номерата на карти, кодовете за сигурност и еднократните кодове (OTP) могат да достигнат до екипа от измамници, преди жертвата да натисне бутона за изпращане.

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

Верига на атаката (Източник – Group-IB)
Верига на атаката (Източник – Group-IB)

Ако тя се провали, комплектът преминава към повторни уеб заявки на всеки две секунди. Трафикът е обвит в AES-256-CTR криптиране, но всяко съобщение съдържа своя ключ за криптиране, скривайки данните предимно от случайна проверка.

Операторите могат да направляват посетителя през до 32 именувани страници или промени в страницата. След получаване на номер на карта, те могат да поискат SMS код, PIN, друга карта след фалшив отказ или стъпка за потвърждение чрез QR код.

Кампанията използва познати тактики за натиск. Фалшивите известия за пътни такси, такси за колет и предупреждения за доставка карат един твърдян малък дълг да изглежда спешен.

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

Енжин за измами за многократна употреба

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

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

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

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

Архитектура от високо ниво (Източник – Group-IB)
Архитектура от високо ниво (Източник – Group-IB)

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

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

Престъпните групи все повече използват канали извън обикновените SMS-и, както илюстрира разширяването на фишинга през RCS и iMessage, за да заобиколят филтрите и да направят съобщенията да изглеждат по-достоверни. Това прави директната проверка чрез доверен канал по-важна от съденето за съобщението само по неговата формулировка.

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

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

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

ТипИндикаторОписание
Codebase family stringtrsb.topНиз, цитиран вътре в JWR работника и използван за идентифициране на тази линия от версии
Local storage keysJwrCvvForm, JwrCustomCvvForm, JWRCID, JwrIpInfo, JwrSubmittedCardNumbers, JwrSelectedPaymentMethod, JwrControlInstruction, JwrExtraJSON, JwrAjaxUrl, JwrNonce, JWRIFRAMEACTIVE, jwrisThankPage, JwrIsShopify, JwrIsWordPress, JwrCustomEmailorPhoneПовторно използвани маркери за локално съхранение от страна на клиента на JWR
Session identifier patternJWRCVV-[0-9]{13}-[a-z0-9]{1,13}-[a-z0-9]{1,13}Формат на идентификатора за жертва
DOM IDs and classesjwrGlobalErrorPopup, jwrErrorAnimationStyle, jwrErrorSlideIn, paypalLoadingdiv, paymentError1, paymentError2, paypalCardError1, paypalCardError2, loginVerifyError, codeVerifyErrorСтатични отпечатъци на страници и интерфейси на JWR
HTML page namescpay.html, dsmsbank.html, ipayalselectverify.html, hpaypallogin.htmlНабор от фишинг страници, отличаващ фишинг фамилията
Other observed page namesaindex.html, alogin.html, ashop.html, bpassword.html, binfo.html, bqrverify.html, dsms.html, dsmslogin.html, d2fa.html, dverify.html, dthank.html, eemail.html, fpin.html, gapp.html, gloginapp.html, hbanklogin1.html, hbanklogin2.html, hbanklogin3.html, hloading.html, ipaypalselectverify.html, jpaypalverify.html, kpaypalcard.html, lpaypalpin.html, mpaypalapp.html, zthank.htmlФайлове, използвани в цялата фуния за събиране на компрометирани идентификационни данни на JWR
JavaScript filesmain.js, ws-worker.js, check.jsКлиентски пакет, WebSocket работник и модул за проверка на въвеждането
Input-ID convention*-cardnumber, *-expiry, *-cvv, *-cardholder, *-smscode, *-emailcode, *-pincode, paypaypwd, *-paypayaccount, *-buttonМодел за наименование на входа и контролите, използван в страниците на JWR
URL path prefixapiopenПовторящ се префикс на крайна точка за командване и управление (C2) на JWR
C2 endpointapiopenaddClickСигнален маяк за пристигане на жертвата
C2 endpointapiopengetSyncSettingsИзвлича конфигурация, контролирана от атакуващия
C2 endpointapiopenaddCvvОсновна крайна точка за екстфилтрация на идентификационни данни и данни за карти
C2 endpointapiopenthefinalinterfaceКрайна точка за известие за завършване на фунията
C2 endpointapiopenupdateStatusКрайна точка за актуализиране на статуса от оператора
C2 endpointapiopengetPendingInstructionHTTP long-poll крайна точка за инструкции от атакуващия
C2 endpointapiopenbinLookupКрайна точка за проверка на BIN на карта в реално време
WebSocket pathwebSocketQT/JWRCID/khkjsahfjkwhakjlsdwdddddd88Двупосочен път за командване и управление в реално време
WebSocket tokenkhkjsahfjkwhakjlsdwdddddd88Суфикс на токен за достъп на JWR с висока степен на увереност, твърдо кодиран в кода
HTTP traffic patternContent-Type: application/octet-stream with 48-byte header and 16-byte aligned ciphertextAES-256-CTR обвивка на съобщенията, използвана от комплекта
Long-poll patternapiopengetPendingInstruction every 2 secondsHTTP алтернатива, когато WebSocket каналът е недостъпен
Geolocation service sequenceipinfo.io, ipapi.co, ip-api.com, httpbin.org/ipРотация на четири доставчика за IP геолокация
Plugin and platform markersJwrIsShopify, JwrIsWordPress, wcgatewaycompleteorder, ?cartdataМаркери, свързани с пътищата за интеграция на Shopify и WordPress
Detection rule stringalert tls $HOME_NET any -> $EXTERNAL_NET any (msg:"JWR phishing kit: WebSocket access token in URL"; content:"webSocketQT"; http_uri; content:"khkjsahfjkwhakjlsdwdddddd88"; http_uri; classtype:trojan-activity; sid:99000001; rev:1;)Правило за лов във формат Suricata за токена за достъп до JWR WebSocket
YARA rule stringsapiopenaddCvv, apiopengetPendingInstruction, webSocketQT, JWRCVV-, belongtotemplate, khkjsahfjkwhakjlsdwdddddd88, ipayalselectverify.htmlНизове за откриване на основния пакет на JWR с условие за съвпадение на четири или повече низа
Validator stringspersonnummer, fodselsnummer, codicefiscale, germanidОтличителна комбинация на библиотеката AutoValidator
Code-level markerWorkerCrypto.encryptРутина за AES-CTR криптиране на JWR, използваща 32-байтов случаен ключ и 16-байтов IV
Code-level markerinstructionConfigКарта с команди на оператора, съдържаща 32 наименувани инструкции

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