Editorial mirrorBrand mentions redacted to public IDs. Hover to inspect. Everything else is theatre.How it works
THE ENABLERS REGISTRYRegistrar accountability archive
Archive LiveRead-only public record · No ads · No tracking
Case file folder with redacted documents and confidential investigation report.
CASE / RU / SCAM INFRASTRUCTURE EXPOSED

Разоблачение мошенников: подробный анализ 4 мошеннических бэкендов

The Enablers Registry·Editorial mirror·/ru/scam-infrastructure-exposed

Public record copy. Brand names withheld, public accreditation numbers preserved. If the body below says “we”, that means the original publisher, not this mirror. TER only preserves, redacts, and re-contextualizes.

Firebase · Supabase · Express.js · Drainer-as-a-Service · Февраль 2026 года

Разоблачена инфраструктура мошенничества
19,000+
Кража семенных фраз (1 кампания)
4
Полный доступ к бэкендам
0
Требуется аутентификация
267+
Связанные фишинговые домены

 Предупреждение: это анализ, а не нападка

Всё, что изложено в этой статье, является результатом пассивный анализ и общедоступные данные. Ни одна система не была взломана. Ни одна система аутентификации не была обойдена. В каждом случае именно собственные ошибки настройки мошенников привели к тому, что их инфраструктура, данные жертв и рабочие учетные записи стали доступны любому, кто просто захотел их увидеть. Все ключи API были обнаружены в общедоступных пакетах JavaScript. Каждая база данных была широко открыта по замыслу самих операторов. Мы документируем это не для того, чтобы нападать, а чтобы продемонстрировать, что люди, крадущие вашу криптовалюту, не могут даже пристегнуть свои инструменты.

 Основная идея: «скрипт-кидди» с украденными инструментами

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

Современные криптовалютные мошенники — это «скрипт-кидди», использующие приобретенные наборы инструментов. Они покупают пакеты «Drainer-as-a-Service» за 200–500 долларов, развертывают их на бесплатном или недорогом хостинге и молятся, чтобы их жертвы ничего не заметили. Они не пишут код. Они не разбираются в сетях. И уж точно не разбираются в безопасности.

Мы знаем об этом, потому что в феврале 2026 года компания THE ENABLERS REGISTRY проанализировала 4 независимые мошеннические схемы — и в каждом отдельном случае мы могли бы:

  • Прочитать все данные о потерпевших от краж (семенные фразы, адреса электронной почты, IP-адреса, типы кошельков)
  • Изменено или удалено база данных мошенников
  • Определен оператор через утечку ключей API, адресов электронной почты и отпечатков инфраструктуры
  • Воспроизвели атаку на мошенника — используя те же уязвимости, которые они оставили незакрытыми

Никаких эксплойтов. Никаких уязвимостей «нулевого дня». Никакого «взлома». Просто открыв входную дверь, которую они оставили незапертой.

 Пример 1: «Призрачный» API — [REDACTED]

 Express.js на Apache: полное отсутствие реальной безопасности

АУТЕНТИФИКАЦИЯ ОТСУТСТВУЕТОТСУТСТВИЕ ПРОВЕРКИ ВХОДНЫХ ДАННЫХОТСУТСТВИЕ ОГРАНИЧЕНИЙ ПО СКОРОСТИCORS: *
ПараметрЗначение
Домен[REDACTED]
IP-адрес108.181.185.225
Серверный стекApache/2.4.58 (Ubuntu) → Express.js (Node.js)
Баннер SSHSSH-2.0-OpenSSH_9.6p1 Ubuntu-3ubuntu13.11
Эмитент TLSLet's Encrypt (E7), срок действия — январь–апрель 2026 года
Регистратор DNSIANA #146 (ns39/ns40.[REDACTED])
Электронная почта (MX)[REDACTED]
Арендатор Microsoft[REDACTED]
Открытые порты22 (SSH), 80 (HTTP→301), 443 (HTTPS)

 «Аутентификация» — шутка

API поставляется с жестко запрограммированным токеном Bearer: thisisakeyforsecureserver. Но вот в чём суть — токен на самом деле не проверяется:

// No auth header → accepted POST / HTTP/1.1 Content-Type: application/json {"subject":"test","domain":"test","messages":["ping"]} → {"success":true}// Wrong token → also accepted Авторизация: Bearer wrong_token_completely → {"success":true}// Any content type → also accepted Content-Type: text/xml, text/plain, multipart/form-data → {"success":true}

 Отсутствие проверки входных данных

Каждая тестируемая нами полезные нагрузки инъекции принималась без каких-либо предупреждений:

// SQL injection тема: "' ИЛИ 1=1--"→ принято тема: "'; DROP TABLE messages;--"→ принято// SSTI (Server-Side Template Injection) тема: "{{7*7}}"→ принято тема: "{{config}}"→ принято тема: "{{self.__class__}}"→ принято// SSRF (Server-Side Request Forgery) домен: «http://169.254.169.254/latest/meta-data/»→ принято домен: "file:///etc/passwd"→ принято// XSS stored payload тема: "<script>alert(1)</script>"→ принято

 Характеристики работы

Время отклика на запросы POST стабильно составляет около 7,5 секунд независимо от размера данных (принимаются данные от 10 байт до 10 МБ), что указывает на пересылку электронной почты или ретрансляцию веб-хуков на серверной стороне. Ответ на запрос GET поступает за 0,6 с. 10 параллельных запросов обрабатываются за 9,1 с — ограничение скорости не применяется.

 Возможность деанонимизации

Идентификатор арендатора Microsoft 365 NETORGFT19090185 является прямая ссылка на аккаунт организации который зарегистрировал этот домен. Учитывая записи о регистрации в IANA #146 и наличие выделенного IP-адреса (не за CDN), этот оператор является легко идентифицируемый по законным каналам. Запись SPF (include:[REDACTED]) подтверждает, что в случае хостинга электронной почты IANA #146 — все метаданные электронных писем могут быть предоставлены по судебному запросу.

 Пример 2: Firebase Wide Open — [REDACTED]

 Firestore без правил безопасности

ПРАВИЛА FIRESTORE: ОТКРЫТЫЕВСЕ ДАННЫЕ О ЖЕРТВАХ ДОСТУПНЫ ДЛЯ ПРОСМОТРАКлюч API в публичном коде JavaScript12 ПОСТРАДАВШИХ ОБНАРУЖЕНЫ
ПараметрЗначение
Фишинговый домен[REDACTED] (ошибочное написание слова «[REDACTED]»)
Альтернативный домен[REDACTED]
Проект Firebaseweb3ledger-210ab
Ключ APIAIzaSyCv8e-Gl7nK1RPpfNkJt-WjSZiaoe4AsL8
Идентификатор приложения1:1054258933515:web:9fb193fcd0093023f7fc0e
Пакет JS/static/js/main.7a5ec2fa.js
Правила FirestoreПолный доступ — чтение/запись без аутентификации
Общее число пострадавших12 записей в users коллекция
Найденные коллекцииusers, transactions

 Данные о жертвах — полностью доступны для всех

Один неавторизованный запрос GET к REST-API Firestore вернул каждая украденная фраза-секрет:

GET /v1/projects/web3ledger-210ab/databases/(default)/documents/users?pageSize=300 → 200 OK→ Всего документов: 12// Sample victim record (seed phrase redacted for safety) { «walletId»: «W3L-65285520», «walletType»: «WalletConnect», «электронная почта»: «[УДАЛЕНО]@gmail.com», «seedPhrase»: "████ ████ ████ ████ ████ ████ ████ ████ ████ ████ ████ ████", «createdAt»: «2026-02-15T00:14:52.804Z», «статус»: «активный» }

Среди 12 записей была одна, которая многое объясняла — кто-то уже протестировал систему с помощью fbi@fbi.gov как и в электронном письме. Мошенник либо тестировал свою собственную систему (что полезно для идентификации), либо кто-то другой уже проверил её.

 Ход атаки

Фишинговый сайт имитирует интерфейс кошелька [REDACTED]. Жертва нажимает «Подключить кошелек» → вводит сед-фразу → фронтенд на React записывает данные напрямую в Firestore → мошенник считывает информацию из той же открытой базы данных. Сервера на стороне серверной инфраструктуры нет вообще. Вся система работает в рамках бесплатного тарифа Google.

 Возможность деанонимизации

Идентификатор проекта Firebase web3ledger-210ab и идентификатор приложения 1:1054258933515 являются привязанный к аккаунту Google. Google хранит данные о выставлении счетов, журналы IP-адресов и информацию о создании учетных записей для всех проектов Firebase. Достаточно одного запроса со стороны правоохранительных органов, направленного в Google, чтобы раскрыть личность оператора. Кроме того, тот факт, что правила Firestore полностью открыты, означает, что мы могли бы внести записи в их базу данных, уведомлял пострадавших в режиме реального времени или удалял всю коллекцию.

 Пример 3: Полный набор операций CRUD в Supabase — [REDACTED]

 Безопасность на уровне строк отключена, GraphQL полностью открыт

RLS ОТКЛЮЧЕНОПОЛНЫЙ ДОСТУП К ОПЕРАЦИЯМ CRUDПОДДЕРЖКА GRAPHQLОБЗОР ФУНКЦИЙ EDGEЛОКАЛИЗАЦИЯ НА РУССКИЙ ЯЗЫК
ПараметрЗначение
Фишинговый домен[REDACTED] (типосквот от «[REDACTED]»)
Проект Supabasegzqsadraigchwdhblavp
Ключ Anon Опубликовано в /assets/index-b025f4a6.js (748 КБ)
Таблица базы данныхseeds — открыть для чтения, вставки, обновления, удаления
GraphQLВключена полная интроспекция + мутации
Функции на границе send-wallet-import-email, send-email
Почтовый сервисAPI повторной отправки (RESEND_API_KEY в переменных среды)
Учетные записи о жертвахИдентификаторы 130–131 (129 ранее удален)
Язык интерфейса Русский («Основной кошелек», «Ваш кошелек загружается...»)

 Полный доступ к базе данных — чтение, запись, удаление

Анонимный ключ Supabase, содержащийся в минимизированном пакете JavaScript, предоставляет полный доступ CRUD к seeds таблица:

// READ — get all stolen seed phrases GET /rest/v1/seeds?select=*ℴ=id.asc → 200 OK [ {«id»:130, "фраза":"████ ████ ████ ████ ████ ████ ████ ████ ████ ████ ████ ████", «имя»:«Основной кошелек»}, {«id»:131, "фраза":"████ ████ ████ ████ ████ ████ ████ ████ ████ ████ ████ ████", «имя»:«Основной кошелек»} ] // INSERT — we can write to the scammer's database POST /rest/v1/seeds {"phrase":"[REDACTED]","name":"test"} → 201 Создано {«id»:132} // UPDATE via GraphQL mutation { updateseedsCollection(filter:{id:{eq:131}}, set:{name:"THE ENABLERS REGISTRY was here"}) { affectedCount } } → {"affectedCount": 1}// DELETE via GraphQL mutation { deleteFromseedsCollection(filter:{id:{eq:131}}, atMost:1) { affectedCount } } → {"affectedCount": 1}

Идентификаторы начинаются с 130 — то есть записи с 1 по 129 были ранее удалены оператором. Через эту систему прошло не менее 131 семенной фразы.

 Функции Edge: цепочка электронных писем

Активны две функции Supabase Edge. Мы провели обратную разработку send-email определить ожидаемый формат входных данных функции путем тестирования различных вариантов данных:

// Probing send-email endpoint {"seed":"test phrase","name":"test"} → 200 OK {"id":"f2749592-..."} {"seed_phrase":"...","wallet_name":"..."} → 400 «Данные о семенах не предоставлены». {"phrase":"...","name":"..."} → 400 «Данные о семенах не предоставлены».// The function accepts {seed, name} and sends to attacker via Resend API// Edge Function source (reconstructed from JS bundle):// NB.functions.invoke("send-wallet-import-email",// {body: {wallet_name, secret_phrase, ip_address}})

Повторно отправить ключ API (RESEND_API_KEY) хранится в переменных среды Supabase. Сервис Resend ведёт учет данных проверки отправителей и данных для выставления счетов — еще один прямой путь к установлению личности оператора.

 Возможность деанонимизации

Русская локализация пользовательского интерфейса («Основной кошелек», «Ваш кошелек загружается...») указывает на Русскоговорящий оператор. Проект Supabase (gzqsadraigchwdhblavp) привязан к учетной записи с данными о счетах. Сервис «Повторная отправка письма» содержит адрес электронной почты получателя. С помощью интроспекции GraphQL можно увидеть полную схему базы данных. Мы продемонстрировали полный доступ на запись — мы могли бы заменить каждую украденную семенную фразу предупреждением для пострадавших, либо удалил всю таблицу. Оператор не смог бы восстановить эти данные.

 Пример 4: Дренажная система промышленного масштаба — [REDACTED]

 19 000 фраз-семян за 5,8 дня

УКРАДЕНО БОЛЕЕ 19 ТЫСЯЧ СЕМЯНПОСЛЕДОВАТЕЛЬНЫЕ ИДЕНТИФИКАТОРЫ ЗАДАЧОТСУТСТВИЕ ОГРАНИЧЕНИЙ CORSDaaS KIT ([REDACTED])ПОДТВЕРЖДЕНО 11 ДОМЕНОВ
ПараметрЗначение
Домен интерфейса [REDACTED] («PolySniper | Ставки инсайдеров от Frontrun»)
API C2api.yfhikblkhghdyteiuyf54.run
IP-адреса C2 172.67.168.147, 104.21.26.231 (IANA #1910)
БэкендExpress.js (Node.js) v1.0.0
Регистратор (интерфейс)IANA #3765 Co.
Регистратор (C2)[REDACTED] (IANA #303)
Время безотказной работы~139 часов (начало ~10 февраля 2026 г., 21:00 UTC)
Комплект сливных трубок CDN [REDACTED] (601 КБ зашифрованного JS)
Бот в [REDACTED]Активный, с поддержкой уведомлений
Ограничение частоты запросов10 запросов за 60 секунд (единственное обнаруженное ограничение)

 Масштаб, определяемый последовательными идентификаторами

Самая роковая ошибка: последовательные идентификаторы заданий. При каждой отправке фразы-семенного кода выдается увеличивающийся идентификатор, что позволяет любому пользователю рассчитать общий объем:

POST /api/check-seed-full { «seedPhrase»: «тестовая фраза», «bundleId»: "88ef78f56e0837dd0339e40a882bf563", «глубина»: 100, «домен»: «[REDACTED]», «sourceInfo»: {«walletName»:«[REDACTED]», «isBot»:false} } → {"success": true, "message": "Запрос помещен в очередь", "jobId": "19358"}// Next request: jobId 19359, then 19360...// ~19,000 seed phrases in ~139 hours = ~137 per hour

 Многоцепочечная архитектура

Сервер C2 выводит ключи по всем основным цепочкам, используя пути вывода глубиной 100:

⛓️
Целевые сети
ETH/BTC/SOL/XMR
🔑
Глубина производной
100
🌐
Подтвержденные домены
11
🕸️
[REDACTED] — ссылка
255+

 Инфраструктура кампании

11 подтвержденных доменов, принадлежащих двум группам операторов, отслеживаемых по идентификаторам пакетов:

Идентификатор пакетаДоменыСтатус
88ef78f5...[REDACTED]В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ
4446ea5d...[REDACTED], [REDACTED]В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ
Комплект [REDACTED] [REDACTED], [REDACTED], [REDACTED], [REDACTED], soljup.onspace.build Смешанный

 Анализ полезной нагрузки JavaScript

Три зашифрованных JS-кода служат для сбора данных:

  • wallet-connect.js (46 КБ) — Обеспечивает работу интерфейса подключения кошелька, перехватывает вводимые семенные фразы. Обфускация с помощью ротации массива строк.
  • wallet-specific-modals.js (134 КБ) — Содержит Полный список английских слов по стандарту BIP39 и Список слов для Monero (1 626 слов). Защита от отладки посредством переопределения console.log/trace. Поддержка модальных окон для нескольких кошельков.
  • [REDACTED]/index.js (601 КБ) — Код, зашифрованный с использованием Unicode и именами переменных на китайском языке. Логика drainer, специфичная для Solana. Кодировщик Base58, примитивы вывода криптографических ключей. Версия 3.0.0.

 Возможность деанонимизации

Этот CORS: * заголовок и отсутствие средств аутентификации любой пользователь может отправлять запросы и отслеживать изменение идентификатора задания в режиме реального времени. Благодаря интеграции с ботом [REDACTED] оператор получает уведомления на свой аккаунт в [REDACTED] — при этом метаданные [REDACTED] могут быть запрошены по судебному предписанию. IANA #3765 (регистратор для фронтенда) — это известный «непробиваемый» регистратор, с которым мы ранее исследованный, но компания [REDACTED] (регистратор доменов C2) действительно удовлетворяет запросы правоохранительных органов. The [REDACTED] Комплект инструментов для сбора данных обслуживает более 255 доменов — взлом сайта [REDACTED] привёл бы к раскрытию всей операции DaaS и всех её клиентов.

 Сравнение: 4 операции, один и тот же шаблон

Метрическая система mn19indexpre
Express.js
web3ledgar
Firebase
web3safe-pal
Supabase
aipolypredictor
Сливной клапан C2
АутентификацияНет (токен игнорируется)НетАнонимный ключ в JSНет (CORS: *)
Данные доступны для чтенияСообщения/ретрансляцияВсе семенные фразыВсе семенные фразыИдентификаторы заданий / масштаб
Данные, доступные для записиДа (без ограничений)ДаДа (полный набор операций CRUD)Да (отправить)
Проверка входных данныхНольНольНольМинимальный
Ограничение частоты запросовНетНетНет10 запросов за 60 секунд
Поддающийся деанонимизацииарендатор MS365Аккаунт GoogleПовторная отправка + Биллинг SupabasePDR + [REDACTED]
Предполагаемое число пострадавшихНеизвестно12131+19,000+
Язык оператораНеизвестноАнглийскийРусскийНеизвестно

 Почему мошенники — это не хакеры

Доказательства более чем убедительны. Во всех четырёх операциях мы наблюдаем одну и ту же закономерность:

 Как действуют мошенники
  • Купить готовые комплекты для сушки посуды (200–500 долларов)
  • Развертывание на бесплатных тарифных планах (Firebase, Supabase)
  • Оставить настройки по умолчанию без изменений
  • Используйте жестко запрограммированные токены, которые не проверяются
  • Никогда не включайте RLS, никогда не ограничивайте CORS
  • Указать свои идентификаторы в метаданных
  • Используйте последовательные идентификаторы, которые отражают масштаб
 Что бы сделали хакеры
  • Написать собственные инструменты для вывода данных
  • Используйте зашифрованные каналы связи с аутентификацией
  • Генерация случайных идентификаторов, ротация инфраструктуры
  • Обеспечить надлежащий контроль доступа
  • Используйте Tor и цепочки прокси-серверов, анонимные платежи
  • Разделить операционную идентичность и хостинг
  • Применять методы противодействия криминалистической экспертизе

Типичный клиент сервиса «Drainer-as-a-Service» — это специалист по социальной инженерии с кредитной картой, а не технический специалист. Они умеют зарегистрировать домен и вставить код в панель управления хостингом. Но они не умеют:

  • Настройте правила безопасности Firestore (это займет 2 минуты)
  • Включить защиту на уровне строк в Supabase (займет 5 минут)
  • Проверить и очистить входные данные (займет 30 минут)
  • Используйте UUID вместо последовательных целых чисел (на это уйдет всего 1 строка кода)
  • Ограничить CORS собственными доменами (для этого потребуется всего одна строка в конфигурации)

Это не особо искушенные противники. Это люди, которые не умеют настраивать базу данных.

 Индикаторы компрометации (IOC)

Домены

# Case 1: Express.js API [REDACTED] # Case 2: Firebase Stealer [REDACTED] [REDACTED] # Case 3: Supabase Stealer [REDACTED] # Case 4: Drainer Campaign [REDACTED] API.yfhikblkhghdyteiuyf54.run yfhikblkhghdyteiuyf54.run [REDACTED] [REDACTED] [REDACTED] [REDACTED] [REDACTED] stakepayment.icu [REDACTED] [REDACTED] [REDACTED] [REDACTED] soljup.onspace.build

IP-адреса

108.181.185.225 # Case 1 — Express.js (dedicated) 172.67.168.147 / 104.21.26.231 # Case 4 — C2 API (IANA #1910) 172.67.178.251 / 104.21.67.171 # Case 4 — Frontend (IANA #1910) 172.67.209.39 / 104.21.37.139 # Case 4 — [REDACTED] (IANA #1910) 43.130.171.152 / 43.130.171.225 # Case 4 — onspace domains (Tencent)

Ключи API и идентификаторы проектов

# Firebase (Case 2) Проект: web3ledger-210ab Ключ API: AIzaSyCv8e-Gl7nK1RPpfNkJt-WjSZiaoe4AsL8 Идентификатор приложения: 1:1054258933515:web:9fb193fcd0093023f7fc0e # Supabase (Case 3) Проект: gzqsadraigchwdhblavp Анонимный ключ: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... # Campaign Tracking (Case 4) Пакет 1: 88ef78f56e0837dd0339e40a882bf563 Пакет 2: 4446ea5ddb308b2494db8ad4b12196c3 # Microsoft Tenant (Case 1) [REDACTED]

 Вывод: «Король голый»

 Вывод

Каждая из проанализированных нами мошеннических схем могла бы быть полностью взломаны, лишены анонимности и выведены из строя используя лишь веб-браузер, утилиту curl и общедоступную документацию. В каждом случае злоумышленники оставляли свои базы данных полностью открытыми, ключи API — в общедоступных файлах JavaScript, свои идентификационные данные — в метаданных, а данные своих жертв — доступными для любого, кто удосужился их поискать.

Вывод прост: мошенники — это не хакеры. Это магазинные воришки, которые купили набор отмычек на AliExpress и забыли запереть собственную входную дверь. Инструменты, которыми они пользуются, сложны — потому что их создал кто-то другой. Сами операторы — дилетанты, которые без труда раскрывают свою инфраструктуру, данные своих жертв и собственные личности любому, кто обладает элементарными техническими знаниями.

Если вы вводили свою семенную фразу на любом из этих сайтов — считайте, что ваш кошелек взломан, и немедленно переведите средства.

Обо всех выявленных фактах было сообщено соответствующим поставщикам услуг (Google/Firebase, Supabase, IANA #1910, регистраторам доменов), а также зафиксировано для правоохранительных органов. Указанные выше индикаторы угрозы (IOC) были добавлены в THE ENABLERS REGISTRY — список уничтожения.

Поделиться этим расследованием

X / Twitter [REDACTED] Reddit LinkedIn

Связанные расследования

Разоблачение [REDACTED]: 55 доменов и схема похищения средств через TRON Approval
РАССЛЕДОВАНИЕ
Разоблачение [REDACTED]: 55 доменов и схема похищения средств через TRON Approval
ТЩАТЕЛЬНОЕ РАССЛЕДОВАНИЕ
Набор инструментов «Crypto Drainer»: раскрыты имена реселлеров «Angel Drainer»
[REDACTED] TDS: 1 500 панелей подверглись утечке, легитимных способов использования нет
РАССЛЕДОВАНИЕ
[REDACTED] TDS: 1 500 панелей подверглись утечке, легитимных способов использования нет

Continue browsing the ledger

This page is the editorial mirror. Brand names are redacted to public IANA / business identifiers. Use the index to navigate other case files.

Open registrar ledger → All briefings