Блог

Внутри SkyDNS: как мы построили ML-архитектуру нового поколения

Как SkyDNS перестроил ML-инфраструктуру: Kubernetes, покрытие 95,7% всех TLD зон, защита от zero-day и стабильное качество при росте данных.

17 дек. 2025 г.

НовостиИБ продукты
Вадим КуликовВячеслав Новоселов

4 мин.чтение

Внутри SkyDNS: как мы построили ML-архитектуру нового поколения

Как было

Полтора года назад мы начали поэтапный переход на новую инфраструктуру для запуска уже имеющихся моделей машинного обучения, а также обучения новых. Этот процесс затронул архитектуру хранения, обработки и классификации данных о доменах.

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

Как стало

Сейчас вся система ML работает в Kubernetes. Это система управления контейнеризованными приложениями, которая позволяет автоматически распределять вычислительные ресурсы между задачами в кластере. Благодаря этому мы объединили ресурсы в единый распределенный кластер из 18 рабочих машин и 9 служебных, с общей мощностью 420 потоков и более 1,2 ТБ оперативной памяти.

Также мы отказались от HDFS для промежуточного хранения данных: теперь обработка данных и запуск моделей выполняются в контейнерах, а управление процессами автоматизировано с помощью Apache Airflow. Все данные хранятся в распределенном кластере отказоустойчивой базы данных Apache Cassandra, что гарантирует их целостность и достаточную скорость чтения/записи при условии работы с сотнями подов с моделями.

С чем мы работаем

На текущий момент мы обрабатываем базу данных объемом более 5 терабайт данных, которая включает в себя более 130 миллионов доменов и более 400 миллионов URL.

Покрытие составляет 95,7% от всех TLD зон и 71,4% от общего количества мировых доменов.

По данным 2ip.ru, на декабрь 2025 года количество TLD зон составляет 1516, количество зарегистрированных доменов на них – 270,9 млн, а с контентом на них чуть более 185 млн. Каждый день регистрируется от 90 до 130 тысяч новых доменов, примерно столько же проходит перерегистрацию владельца.
Сейчас мы покрываем все TLD зоны, которые известны 2ip.ru. По данным же ICANN, всего существует 1583 зоны, и нам предстоит их покрыть в ближайшем будущем.

Все домены и URL классифицированы по 9 категориям безопасности и 60 категориям контента, а информация обновляется ежедневно. Каждая новая итерация модели проходит обучение на этом массиве данных.

Мы постоянно расширяем набор источников, применяемых для создания нашей базы: используем как внешние фиды, включая коммерческие, например, Malware Patrol, так и собственные источники. Среди них – фермы краулеров, поведенческие классификаторы и анализ реального DNS-трафика. Отдельную роль играет наша эталонная база, которую мы наполняем вручную. Она используется для валидации новых моделей, оценки метрик precision/recall, выявления деградаций качества и контроля ложных срабатываний.

Угрозы нулевого дня и ICANN

Одним из ключевых направлений стало усиление работы с доменами, которые могут использоваться в атаках нулевого дня. Для этого мы расширили интеграцию с ICANN — международным регистратором доменных имён.

Мы получаем данные о новых регистрациях, перерегистрациях, смене владельцев в зонах com, net и сотнях других, и используем эти данные для автоматического выявления недавно зарегистрированных доменов и тщательного их анализа. Эти домены попадают в специальную категорию и находятся под особым наблюдением в течение 90 дней с момента регистрации.

Что нам это дает:

  • доступ к регистрационной информации сразу после появления домена;
  • добавление в фильтрационную базу до того, как ресурс может быть использован во вредоносных целях – для фишинга, распространения вредоносного ПО или обхода фильтрации;
  • повышение точности классификации за счёт дополнительных корреляций, например, по сроку регистрации и жизни домена, типу сертификата, TLS-параметрам и инфраструктурным связям.
  • Мы уже видим, как эти данные повышают устойчивость наших моделей. В планах расширение этой интеграции на национальные доменные зоны, в первую очередь — .ru, чтобы обеспечить 100% покрытие регистрационных изменений.

    Что показало сравнение старой и новой ML-инфраструктуры

    Переход на новую архитектуру мы сопровождали прямым сравнением результатов работы моделей на старой и новой инфраструктуре. Целью было не «улучшить цифры любой ценой», а проверить ключевое: сохраняется ли качество классификации при усложнении самой задачи анализа.

    Сохранение качества при росте глубины анализа

    Результаты показали, что при переходе удалось сохранить качество классификации, одновременно увеличив глубину анализа на уровне URL.

    Если ранее основной фокус делался на доменном уровне, то новая инфраструктура позволила системно анализировать вложенные страницы, пути и параметры URL. Это принципиально более сложная задача с точки зрения ML, поскольку:

  • кратно возрастает объём данных;
  • увеличивается вариативность признаков;
  • снижается доля «очевидных» паттернов.
  • Тем не менее результаты показали сопоставимые метрики качества, что говорит о корректной архитектуре пайплайнов и устойчивости самих моделей к росту сложности входных данных. Для информационной безопасности это означает более точную работу в сценариях, где вредоносный контент маскируется внутри легитимных сайтов.

    Стабильность категориальной структуры

    Категориальная структура осталась стабильной - это важный индикатор отсутствия системного смещения модели. Новая инфраструктура не «перекосила» классификацию и не изменила семантику категорий, а значит:

  • отчёты и аналитика остаются сопоставимыми для экспорта;
  • SOC и ИБ-команды продолжают работать с привычной логикой категорий;
  • рост данных не приводит к потере интерпретируемости результатов.
  • Почему доменов стало меньше, а данных больше

    Несмотря на то, что при переходе на новую ML-инфраструктуру мы обновили информацию для более чем трети нашей базы, суммарный прирост составил около 3,5 млн доменов. На первый взгляд парадоксальный результат, но он отражает сразу два процесса.

    Во-первых, это естественный жизненный цикл интернета. Значительная часть доменов прекращает работу или становится неактивной, сайты меняют своих владельцев и содержимое, а часть инфраструктуры используется краткосрочно и исчезает.

    Во-вторых, присутствуют также и архитектурные изменения. Мы перестали «держать» в базе данных неактивные домены ради формального покрытия. Наш фокус сместился на глубокую обработку действующих сайтов, увеличилась детализация анализа страниц внутри доменов – мы добавили 44 млн URL для уже известных нам доменов. И на ежедневной основе мы продолжаем добавлять десятки тысяч новых URL.

    Проще говоря, мы перешли от «широкого, но поверхностного» покрытия к более точному и практически значимому анализу.

    Совпадения и отличия: что говорят цифры

    Рост абсолютного количества совпадений и расхождений между результатами работы старой и новой инфраструктуры был ожидаем при увеличении объёма и глубины анализируемых данных. Ключевым результатом стало то, что доля совпадений осталась стабильной – на уровне ~79% относительно эталонной базы. Это указывает на два важных вывода:

  • Сохранение качества. Модели не деградировали при переходе на новую, более сложную архитектуру обработки, а сохранили высокое и предсказуемое соответствие эталону.
  • Адекватность изменений. Увеличение числа расхождений в основном отражает реальные изменения в динамичной среде интернета, а не системные ошибки классификации.
  • Таким образом, новая инфраструктура обеспечила необходимую масштабируемость и детализацию анализа, не пожертвовав при этом надёжностью и точностью итоговых результатов.

    Обновления, которые имеют значение

    Обновление ML-архитектуры — это не «технический апгрейд ради апгрейда». Его эффект измеряется конкретными ИБ-метриками:

  • снижение времени реакции на новые угрозы;
  • более раннее выявление вредоносных доменов;
  • устойчивость системы под пиковыми нагрузками;
  • стабильное качество классификации при росте данных;
  • закрытие классов угроз, которые ранее оставались в «серой зоне».
  • Фактически мы убрали инфраструктурные узкие места, которые могли маскировать риски, и перевели DNS-безопасность из реактивного режима в проактивный. Для пользователей это означает более надежную, быструю и проактивную защита в условиях постоянно меняющихся угроз.

    «DNS больше не должен быть «слепой зоной». Мы строим систему, в которой он становится полноценным уровнем киберзащиты — с аналитикой, ML и архитектурой enterprise-класса.»

    CEO SkyDNS Вячеслав Новоселов
    Поделиться: