Привет, Хабр. Сегодня я хочу поделиться историей одного небольшого, но увлекательного расследования. Все началось, как обычно, с малого — с одного подозрительного IP-адреса. А закончилось вскрытием целой сетки фишинговых доменов и отправкой финального «письма счастья» хостинг-провайдеру.
Это не рассказ о взломе Пентагона с помощью 0-day. Это реальный кейс, показывающий, как с помощью базовых инструментов, OSINT и капельки терпения можно пресечь деятельность мошенников, которые, как выяснилось, работали с размахом.
Предыстория: Я подключил себе секретаря от тиньки, что б поприкалываться над мошенниками. И тут звонок, говорят из деканата, просят выгрузить какую-то характеристику и без этого якобы не получится получить диплом, устроиться на работу и тд. "Сотрудник деканата" просит зайти на портал и диктует урл по буквам. Далее попросили авторизоваться и там уже получить выгрузку. Но как вы уже поняли, мошенники хотят украсть креды от госуслуг.
Этап 1: Первичная разведка – Шум в эфире?
Все началось с IP-адреса 146.103.41.114 и связанного с ним домена gpkmo.com. Первым делом, как и положено, запускаем nmap
:
sudo nmap -sS -p- --min-rate=1000 146.103.41.114
И тут нас ждал первый сюрприз. Nmap показал, что все 65535 портов находятся в состоянии open
.
Классическая уловка. Файрвол на сервере настроен так, чтобы отвечать на любой SYN-пакет, сбивая с толку простые сканеры. Это говорит о том, что админ как минимум читал мануалы по базовой защите.
Хорошо, обходим блокировку ping
и просим nmap
определить версии сервисов на стандартных портах:
sudo nmap -sV -sC -Pn -p 21,22,80,443... 146.103.41.114
Картина прояснилась:
22/tcp: OpenSSH 8.2p1 (Ubuntu)
80/tcp, 443/tcp: nginx 1.18.0 (Ubuntu)
Ничего особенного, никаких «дырявых» версий. Стандартный веб-сервер. Пора смотреть, что на нем крутится.
Этап 2: Анализ веба – Ловушка для простаков
Зайдя на сайт, мы увидели не клон Госуслуг, а страницу-прокладку, замаскированную под «Государственный Образовательный Портал».

Текст на странице — классическая социальная инженерия: упоминание приказа Министерства образования, изменение параметров подключения к ЕСИА с будущей даты (12.02.2025 г.) и призыв авторизоваться через Госуслуги.

Кнопка «Войти через Госуслуги» вела на /login
, который, в свою очередь, перенаправлял нас на страницу, являющуюся полной копией настоящего портала Госуслуг. И вот здесь началось самое интересное. Анализ исходного кода этой страницы дал нам две ключевые зацепки:
Улика №1 (Лень):
<html lang="ru" data-scrapbook-source="https://esia.gosuslugi.ru/login/">
Мошенники не стали заморачиваться и просто скопировали страницу с помощью расширения ScrapBook. Это кричало о низком уровне их технической подготовки.
Улика №2 (Откровение):
// Отправляем форму в Telegram fetch("/send-login", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ /* ... */ }), })
Комментарий в коде (страница логина в ГУ, в тегe <script>, кому интересно, могу скинуть полный код обеих страниц) расставил все по своим местам. Им не нужна база данных. Они просто пересылают украденные логины и пароли себе в Telegram. Это объяснило, почему наши дальнейшие попытки найти SQL-инъекцию с помощью
sqlmap
провалились — атаковать было нечего.
Этап 3: Попытки прямого штурма – Стена
На этом этапе мы убедились, что цель хоть и примитивна, но защищена от атак «в лоб».
SQLi/Command Injection: Провалились.
Сканирование директорий (
gobuster
): Наткнулось на хитрую защиту. Сервер на любой несуществующий путь отвечал не 404, а редиректом 302 на случайный URL, который в итоге показывал ту же страницу входа.
/login (Status: 302) [Size: 39] [--> /b9b691d3414a26ab]
/Login (Status: 302) [Size: 39] [--> /77cec69c40cadb88]
...
Прямой штурм захлебнулся. Пора было менять тактику.
Этап 4: OSINT – Начинается настоящая работа
Раз технические средства не сработали, мы перешли к разведке по открытым источникам. У нас был уникальный артефакт — фраза со страницы-прокладки: "В связи с изменением 12.02.2025 г. параметров подключения системы к ЕСИА".
Один-единственный запрос в Google по этой фразе дал ошеломляющий результат.
Мы увидели десятки доменов с абсолютно идентичным содержанием: ipkmo.com
, lpkmo.com
, apkmo.com
и так далее. Быстрая проверка показала, что все они ведут на один и тот же IP 146.103.41.114
.
Вывод: Мы столкнулись не с одним сайтом, а с целой сеткой доменов, созданной для уклонения от блокировок.
Этап 5: Профилирование инфраструктуры – Финальный штрих
Оставалось собрать всю информацию воедино.
subfinder
не нашел субдоменов.dig
иwhois
показали, что владельцы доменов скрыты за Whois Privacy.Анализ IP через сервисы типа 2ip.ru дал финальную картину:
Информация об IP-адресе Хостинг-провайдер:
regxa-cloud
(зарегистрирован в Ираке).Расположение сервера: Германия.
Использование провайдера из одной юрисдикции для аренды серверов в другой — еще одна попытка запутать следы.
Заключение: Финальный удар – Abuse Report
Взлом сервера в данном случае был бы неэффективен. Даже получив доступ, мы бы просто увидели статические HTML-файлы и один скрипт-форвардер. А на следующий день они бы подняли копию на новом домене из своей сетки.
Единственный верный способ противодействия — уничтожить инфраструктуру.
Мы собрали все наши находки в один отчет:
IP-адрес сервера (
146.103.41.114
).Полный список обнаруженных фишинговых доменов.
Описание мошеннической схемы.
Неопровержимые доказательства (код с
data-scrapbook-source
и комментарием про Telegram).
Этот отчет был направлен в abuse-службу хостинг-провайдера regxa-cloud
. С таким набором доказательств у них не остается другого выбора, кроме как заблокировать сервер, обрушив тем самым всю сеть мошенников.
Мораль сей басни проста: иногда самый эффективный «эксплойт» — это грамотно составленный email, подкрепленный тщательной разведкой. А OSINT по-прежнему остается королем.
P.S: Я только начал заниматься данной деятельность, поэтому прошу без резких высказываний. Я открыт к новой информации и жду ваше мнение в комментариях :-)