📱 Подписаться
IT и цифровая трансформация

Анатомия фишинг-кита: полиморфный CSS, гомоглифы и инфраструктура на 290+ доменов

📰 Habr 👁️ 3 просмотров

fox521 час назад

Анатомия фишинг-кита: полиморфный CSS, гомоглифы и инфраструктура на 290+ доменов

Время на прочтение6 минОхват и читатели2KИсследования и прогнозы в IT*Информационная безопасность*КейсРазбираем реальный инцидент — от фишинговой ссылки до bulletproof-хостинга. IOC, техники обфускации и инфраструктура кампании на 290+ доменов.

Контекст

14 марта 2026 года в личный Telegram пришло сообщение от знакомого:

Салам Аллейкум братья и сестры Проходит региональное голосование Прошу проголосовать за меня и отправить по своимСо ссылкой на beaminkjet[.]com/umarashab.

«Отправить по своим» — ключевая фраза. Сообщение приходит от реального знакомого с украденного аккаунта — уровень доверия максимальный. Каждая жертва становится вектором доставки для своего круга контактов. Классический вирусный фишинг, работающий без единого эксплойта.

Эта статья — технический разбор инцидента с IOC и деталями инфраструктуры. Если вы аналитик SOC или занимаетесь threat intelligence — здесь есть правила детекции (Sigma, YARA) и индикаторы для блокировки.

Цепочка атаки

Этап 1: фильтрация

Первое, что делает сервер — проверяет User-Agent:

User-AgentОтветЦельМобильный200 OK → фишинговая страницаПоказать жертвеДесктопный302 → google.comСкрыть от аналитиковTelegramBot204 No ContentСкрыть preview в мессенджереЭто не случайность, а осознанная фильтрация: боты и аналитики видят google.com или пустоту, жертва на мобильном — фишинговую страницу.

Этап 2: «голосование»

Мобильный пользователь видит страницу с двумя кандидатами (фото хостятся на postimg.cc), счётчиками голосов и кнопкой «Проголосовать». При нажатии — popup:

В целях борьбы с накруткой просим вас авторизоваться с помощью соц. сетейКнопка «Войти через Telegram» → редирект на страницу кражи сессии.

Этап 3: кража

Фейковый Telegram Login Widget запрашивает номер телефона и код авторизации. Введённый код перехватывается — злоумышленник получает полный доступ к аккаунту: контакты, переписка, каналы, рассылка от имени жертвы.

Что внутри фишинг-кита

Гомоглифы: обход текстовых фильтров

В тексте фишинговой страницы кириллические буквы заменены визуально идентичными латинскими: «гoлocoв» (латинская "o" вместо кириллической "о"), «прoeкт», «учacтиe». Для человека — незаметно, для текстового фильтра Telegram — это совершенно другие слова. Поиск по кириллическому «голосов» не найдёт «гoлocoв» с латинскими подменами. Техника документи��ована как MITRE ATT&CK T1036.005 (Masquerading), хотя классически она описывает маскировку файлов и процессов — здесь masquerading применяется на уровне текстового контента для обхода контентных фильтров, что является нетипичным применением техники.

Полиморфные CSS-классы

При каждом запросе генерируется уникальный 8-символьный префикс для всех CSS-классов:

Запрос 1: .kbnxfrio_LtqiE { ... }
Запрос 2: .iyevwfjm_LtqiE { ... }
Запрос 3: .tdszpnwx_LtqiE { ... }Суффикс (_LtqiE) стабилен — меняется только префикс. Обфускация реализована на стороне PHP-шаблонизатора. Для сигнатурного детекта — ищите по суффиксам.

Интересный баг: SVG-иконки Telegram используют фиксированный префикс ojmcdqfn_ — шаблонизатор не обфусцирует inline-SVG.

CSS-мусор

Каждый CSS-блок содержит «ложные» свойства, которые перезаписываются реальными:

.prefix_ZOfZpuI {
cursor: wait; /* мусор — будет перезаписан */
background: rgba(34,34,34,.8); /* мусор */
/* реальные: */
background: #0088cc;
cursor: pointer;
}Автоматический анализ CSS без учёта каскадности даст неверную картину.

Anti-replay токены

Каждый запрос получает уникальные идентификаторы:

• Base href: SHA-256 хеш в пути (/5c02cd685e88686d...)
• Redirect path: 7-символьный токен (am4DHt2, vg0uJod, c4329mf)Повторное использование ссылки невозможно — сервер отклоняет уже использованные пути. Это также затрудняет автоматическое сканирование: каждый запрос sandboxа к URL получает уникальную страницу.

Мусорный HTML

Скрытые div-ы с display: none содержат:

• Фейковые товары: «Luxurious Metal Table — 294.52$»
• Lorem ipsum: «Vilicus iure thorax a.»
• Фейковые таблицы с датами и суммами
• Фейковые формы с input-полямиАнтифишинговый сканер видит «интернет-магазин», а не фишинг.

Tracking-хеш

В HTML-комментариях повторяется 8d1c6e9b6c08132c9bddf5128515ebcc (MD5). Стабилен между запросами. Вероятно, идентификатор фишинг-кита или конкретного оператора в партнёрской программе.

Инфраструктура

Сервер

ПараметрЗначениеIP77[.]83[.]39[.]62ASNAS214940 KPRONET / AS215693 PalmaHostВладелец сетиPitline Ltd, Харьков, Украина (77[.]83[.]36[.]0/22)Censys labelBULLETPROOF (confidence 0.75)ОСDebian 12 (SSH OpenSSH 9.2p1)Веб-серверCaddy → PHP backendSSLLet's Encrypt E7, выдан 2026-03-14 11:16 UTCСоседние IP в подсети 77[.]83[.]39[.]x имеют сотни abuse-репортов на AbuseIPDB (77[.]83[.]39[.]4 — 931 репорт). Подсеть систематически используется для вредоносной деятельности.

Перестройка сервера

Censys Service History фиксирует целенаправленную перестройку сервера:

ПериодПортыИнтерпретацияДо ~12 февраля135, 137, 139, 445, 3389, 5985Windows (RDP/SMB/WinRM)12 февраля — 7 марта—Переустановка ОСС ~7 марта22, 80, 443Debian Linux → фишингСервер целенаправленно переустановлен с Windows на Linux под кампанию.

12 доменов на одном IP

На 77[.]83[.]39[.]62 обнаружены 12 доменов, разделённых на два кластера по регистратору и Cloudflare-аккаунту:

Кластер 1 (Namecheap, CF: anastasia+mitchell):

• beaminkjet[.]com — основной фишинговый доменКластер 2 (Global Domain Group, CF: aaden+adaline):

• vybory[.]cyou, vybory[.]bond, vybory[.]sbs, vybory[.]cfd — «выборы» (февраль 2026)
• vesna2026[.]cyou, vesna2026[.]cfd, vesna2026[.]sbs — «весна 2026» (март 2026)
• onetop[.]sbs, onetop[.]cfd, onetop[.]bond, onetop[.]clickДва разных регистратора и два Cloudflare-аккаунта — OPSEC-разделение. Но один IP выдаёт общего оператора.

WHOIS

Регистрант beaminkjet[.]com:

• Email: syimono1488[at]gmail[.]com
• Имя: James Wilson (фейковое)
• Телефон: +1.917-555-0123 (формат 555-xxxx — несуществующий)
• Адрес: 1234 Broadway Ave, New York (шаблонный)Домен зарегистрирован 2025-10-10, WHOIS обновлён в день атаки (2026-03-14). Aged-домен, использованный через 5 месяцев.

Certificate Transparency

6 сертификатов выдано на beaminkjet[.]com 14 марта — в день атаки. Caddy автоматически запрашивает Let's Encrypt при добавлении домена в конфигурацию — всплеск сертификатов указывает на момент деплоя фишинговой инфраструктуры. При этом домен непрерывно имел SSL с октября 2025 (15 сертификатов за 5 месяцев) — это не «спящий» домен, он поддерживался активным.

Масштаб кампании

Компания F6 (ранее F.A.C.C.T., ещё ранее — Group-IB) 12 марта 2026 опубликовала исследование: 290+ доменов используют этот же шаблон с 2022 года. Пиковая активность — февраль 2026 (39 доменов за месяц).

Типичный сценарий F6: голосование «за больного ребенка» → Telegram-авторизация → кража сессии. Наш инцидент — вариация для мусульманской аудитории: «региональное голосование за кандидата».

Мотивация обновления схемы (по данным F6): дефицит российских SIM-карт для создания фейковых аккаунтов → переход на кражу существующих.

IOC

ТипЗначениеDomainbeaminkjet[.]comIP77[.]83[.]39[.]62ASNAS214940 (KPRONET), AS215693 (PalmaHost)Network77[.]83[.]36[.]0/22 (Pitline Ltd, BULLETPROOF)Emailsyimono1488[at]gmail[.]comDomainvybory[.]cyou, vybory[.]bond, vybory[.]sbs, vybory[.]cfdDomainvesna2026[.]cyou, vesna2026[.]cfd, vesna2026[.]sbsDomainonetop[.]sbs, onetop[.]cfd, onetop[.]bond, onetop[.]clickHash (MD5)8d1c6e9b6c08132c9bddf5128515ebcc (идентификатор кита)SSL Serial06:f1:d4:14:46:8b:2d:48:b9:40:cb:a9:42:d2:24:6a:b9:e5

Правила детекции

Sigma (прокси-логи)

title: Telegram Voting Phishing Kit Access
description: Detects access to known Telegram voting phishing domains and infrastructure
status: experimental
author: FDC Threat Intelligence
date: 2026/03/14
logsource:
category: proxy
detection:
selection_domain:
c-uri|contains:
- 'beaminkjet.com'
- 'vybory.cyou'
- 'vybory.bond'
- 'vybory.sbs'
- 'vybory.cfd'
- 'vesna2026.'
- 'onetop.sbs'
- 'onetop.cfd'
- 'onetop.bond'
- 'onetop.click'
selection_ip:
dst_ip: '77.83.39.62'
condition: selection_domain or selection_ip
level: high
tags:
- attack.initial_access
- attack.t1566.002
- attack.credential_access
- attack.t1539

YARA (HTML-контент)

rule Telegram_Voting_Phishing_Kit {
meta:
description = "Telegram voting phishing kit with polymorphic CSS"
author = "FDC Threat Intelligence"
date = "2026-03-14"
strings:
$antibot = "В целях борьбы с накруткой" // UTF-8 Cyrillic
$kit_hash = "8d1c6e9b6c08132c9bddf5128515ebcc"
$popup_func = "showAuthPopup"
$css_pattern = /[a-z]{8}_[A-Za-z]{4,12}/
$hidden_junk = "Luxurious Metal Table"
$static_prefix = "ojmcdqfn_"
condition:
3 of them
}

MITRE ATT&CK

ТактикаТехникаIDПрименение в инцидентеResource DevelopmentAcquire Infrastructure: DomainsT1583.00112 доменов на дешёвых TLD (.cyou, .sbs, .cfd) через два регистратораResource DevelopmentAcquire Infrastructure: VPST1583.003VPS на Pitline Ltd (BPH), переустановка ОС Windows → LinuxResource DevelopmentObtain Capabilities: ToolT1588.002Профессиональный фишинг-кит с полиморфной обфускациейInitial AccessPhishing: Spearphishing LinkT1566.002Ссылка в Telegram с вирусным распространениемExecutionUser Execution: Malicious LinkT1204.001Жертва кликает и взаимодействует с формой «голосования»Defense EvasionMasqueradingT1036.005Замена кириллицы латинскими гомоглифами в тексте страницыDefense EvasionObfuscated Files or InformationT1027Полиморфные CSS, мусорный HTML, anti-replay токеныCredential AccessSteal Web Session CookieT1539Перехват Telegram-сессии через фейковую авторизациюCredential AccessInput Capture: Web PortalT1056.003Фишинговая форма: номер телефона + код авторизации

Рекомендации

Если вам или вашим пользователям пришла подобная ссылка:

• Не переходите по ссылкам «проголосуй за меня» в мессенджерах
• Проверьте активные сессии: Telegram → Настройки → Устройства → завершите подозрительные
• Включите двухфакторную аутентификацию (облачный пароль) — это единственная защита от кражи сессии даже при перехвате кода
• Не пересылайте подозрительные ссылки — вы становитесь вектором атакиДля SOC/аналитиков:

• Добавьте подсеть 77[.]83[.]36[.]0/22 (Pitline Ltd) в watchlist — систематически используется для фишинга
• Все co-hosted домены из IOC-таблицы — в DNS blocklist
• IOC, правила детекции и полный отчёт (TLP:CLEAR) доступны в репозитории threat-intelligenceТеги:• telegram
• threat intelligence
• социальная инженерия
• IOC
• кибербезопасность
• bulletproof hosting
• credential theft
• phishing kit
• фишингХабы:• Исследования и прогнозы в IT
• Информационная безопасность

Получайте больше инсайтов о систематизации бизнеса

Подписывайтесь на Telegram-канал Business Operations — ежедневные материалы о бизнес-процессах, операционном управлении и повышении эффективности

💬 Подписаться на канал