Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 382

DNS-туннелирование

ПроверилCybersecurity entrepreneur & security researcher

Что такое DNS-туннелирование?

DNS-туннелированиеСкрытый канал, кодирующий произвольные данные в DNS-запросах и ответах на UDP/TCP-порту 53; часто используется для C2 и эксфильтрации.


DNS-туннелирование злоупотребляет тем, что трафик DNS (UDP/TCP-порт 53) разрешён почти везде и редко подвергается глубокой проверке. Вредоносное ПО кодирует байты полезной нагрузки в метках поддоменов (например, base32-фрагменты внутри attacker.example.com), а авторитетный сервер злоумышленника отвечает записями TXT, CNAME, NULL или A, несущими ответ или команды. Поскольку разрешение имён рекурсивно, данные утекают наружу даже тогда, когда хост может достучаться лишь до внутреннего резолвера и никогда не обращается напрямую к IP злоумышленника. Этот приём реализуют dnscat2, Iodine и DNS-C2 в Cobalt Strike; пропускная способность невелика, зато канал скрытен.

На него опираются реальные кампании. Бэкдор SUNBURST 2020 года в SolarWinds Orion использовал алгоритм генерации доменов для построения поддоменов avsvmcloud.com, а затем кодировал внутренний домен Active Directory жертвы и список установленных продуктов безопасности в эти DNS-запросы, образуя двусторонний канал C2. Связанные с Ираном операции OilRig/APT34 и DNSpionage также опирались на DNS-туннелирование для постановки задач и эксфильтрации.

Обнаружение опирается на сигналы, которые злоумышленникам трудно скрыть: высокая частота запросов с хоста, необычно длинные метки, высокая энтропия поддоменов (строки base32/base64/hex), нетипичные типы записей вроде TXT или NULL, а также ранее не встречавшиеся домены. Защита включает принудительное направление всех клиентов через контролируемые резолверы, блокировку прямого исходящего порта 53 на исходящем межсетевом экране, DNS sinkhole, ограничение скорости запросов и аналитику аномалий в EDR/NDR.

flowchart LR
  M[Infected host] -->|"data.b32label.attacker.com"| R[Internal resolver]
  R -->|recursive lookup| AUTH[Attacker authoritative NS]
  AUTH -->|"TXT/CNAME reply = command"| R
  R --> M
  AUTH -.reassembles.-> D[(Stolen data and C2)]

Примеры

  1. 01

    Заражённый хост отправляет запросы вида a1b2c3.exfil.attacker.com, в метках которых закодированы похищенные данные.

  2. 02

    dnscat2 поднимает shell через TXT-записи DNS, обходя egress-прокси, разрешающий только HTTP.

Частые вопросы

Что такое DNS-туннелирование?

Скрытый канал, кодирующий произвольные данные в DNS-запросах и ответах на UDP/TCP-порту 53; часто используется для C2 и эксфильтрации. Относится к категории Сетевая безопасность в кибербезопасности.

Что означает DNS-туннелирование?

Скрытый канал, кодирующий произвольные данные в DNS-запросах и ответах на UDP/TCP-порту 53; часто используется для C2 и эксфильтрации.

Как защититься от DNS-туннелирование?

Защита от DNS-туннелирование обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия DNS-туннелирование?

Распространённые альтернативные названия: DNS C2, Эксфильтрация через DNS.

Связанные термины

См. также