CVE-2026-81642 в Debian: переполнение буфера в Unbound и порядок защиты

CVE: CVE-2026-81642
Продукт: Debian
Дата публикации: 16.09.2026
Критичность: CRITICAL
CVSS: 9.1 (4.0)
EPSS: 0,52%; процентиль 42,98%
CISA KEV: нет подтверждения в каталоге CISA KEV

Краткое описание​


В DNSSEC-валидаторе Unbound обнаружена критическая уязвимость, позволяющая вызвать отказ в обслуживании или удаленное выполнение кода. Ошибка срабатывает при обработке DNSKEY с указателем сжатия, ссылающимся на собственные данные. В материале описаны затронутые версии пакетов в Debian, механика атаки и текущий статус исправлений.

Основные характеристики​


Уязвимость позволяет нарушителю, контролируя вредоносную DNS-зону, скомпрометировать DNS-сервер Unbound. Риск включает как отказ в обслуживании, так и потенциальное выполнение произвольного кода.

  • Тип ошибки: CWE-122 (Heap-based Buffer Overflow). Ошибка связана с выходом за границы выделенной памяти при обработке данных.
  • CVSS 4.0: 9.1 (CRITICAL). Вектор: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:Red. Высокая оценка отражает сетевой вектор атаки и отсутствие необходимости в привилегиях.
  • Эксплуатация: Публичные данные о массовой эксплуатации отсутствуют. Состояние в NVD: Awaiting Analysis.
  • EPSS: 0,52% (процентиль 42,98%). Вероятность эксплуатации в ближайшие 30 дней оценивается как низкая, но риск остается высоким из-за критичности.

Какие продукты и версии затронуты​


Уязвимость затрагивает пакет unbound в нескольких релизах Debian. Состояние исправлений различается в зависимости от ветки.

  • Debian 12 (bookworm): Статус open. Текущая версия в репозитории: 1.17.1-2+deb12u4. Исправление не выпущено.
  • Debian 13 (trixie): Статус open. Текущая версия: 1.22.0-2+deb13u3. Исправление не выпущено.
  • Debian unstable (sid): Статус resolved. Выпущена исправленная версия 1.26.1-1.
  • Debian forky: Статус open. Текущая версия: 1.26.0-2. Исправление не выпущено.

Детальная информация о статусе обновлений доступна в Debian Security Tracker.

Причина уязвимости​


Причина уязвимости кроется в логике валидатора DNSSEC в Unbound. При вычислении дайджеста ключа DNSKEY программа обрабатывает поле владельца (owner) ресурсной записи.

Если в DNSKEY используется указатель сжатия (compression pointer), который ссылается на собственные RDATA (данные записи), алгоритм вычисления дайджеста некорректно обрабатывает эту ситуацию. В результате происходит переполнение буфера (buffer overflow) в памяти, выделенной для хранения дайджеста.

Эта ошибка классифицируется как CWE-122 (Heap-based Buffer Overflow). Неконтролируемое написание данных за пределы буфера может привести к повреждению структуры памяти, что вызывает сбой процесса (отказ в обслуживании) или позволяет злоумышленнику изменить поток выполнения программы (удаленное выполнение кода).

Как работает атака​


Атака реализуется через сетевой канал. Злоумышленник не требует доступа к системе жертвы или специальных привилегий. Достаточно возможности отправлять DNS-запросы к уязвимому серверу Unbound.

Механизм атаки включает следующие этапы:

  1. Злоумышленник создает или контролирует вредоносную DNS-зону.
  2. В этой зоне формируется ресурсная запись DNSKEY, содержащая указатель сжатия, который ссылается на собственные данные (RDATA) этой же записи.
  3. Злоумышленник отправляет DNS-запрос к уязвимому серверу Unbound, запрашивая данные из этой зоны.
  4. Сервер Unbound начинает валидацию DNSSEC и вычисляет дайджест ключа.
  5. При обработке некорректного указателя сжатия происходит переполнение буфера, что приводит к сбою или выполнению кода, контролируемого атакующим.

Условия успешной эксплуатации​


Для успешной эксплуатации уязвимости злоумышленнику необходимо выполнить следующие условия:

  • Контроль над DNS-зоной: Атакующий должен иметь возможность управлять содержимым DNS-зоны, чтобы вставить вредоносную запись DNSKEY.
  • Сетевой доступ: Злоумышленник должен иметь возможность отправлять DNS-запросы к целевому серверу Unbound.
  • Уязвимая версия: Целевой сервер должен использовать версию Unbound, содержащую ошибку (до 1.26.0 включительно). В Debian это актуально для bookworm, trixie и forky.

Возможный сценарий атаки​


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

Затем атакующий направляет DNS-запрос к целевому серверу Unbound, который выполняет роль рекурсивного резолвера или валидатора DNSSEC. Сервер получает ответ с вредоносным DNSKEY и начинает процесс валидации.

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

Есть ли публичный эксплойт​


На момент публикации данных в NVD статус уязвимости — Awaiting Analysis. Публичные эксплойты или подтвержденные случаи эксплуатации в реальных атаках в переданных источниках не зафиксированы.

Отсутствие сведений о публичном эксплойте не означает, что он не существует. Учитывая критический уровень CVSS и простоту вектора атаки (сетевой, без привилегий), вероятность разработки эксплойта высока. Рекомендуется относиться к этой уязвимости как к активно эксплуатируемой до подтверждения обратного.

Признаки эксплуатации​


Специфичные индикаторы компрометации (IOC) для этой уязвимости в предоставленных источниках не раскрыты. Общие точки контроля, которые можно использовать для мониторинга, являются неспецифичными:

  • Аварийные завершения процесса: Частые сбои или перезапуски сервиса unbound.
  • Аномальные DNS-запросы: Запросы к зонам, содержащим некорректные записи DNSKEY.
  • Сетевая активность: Необычные исходящие соединения от процесса Unbound, если произошло выполнение кода.

Как обнаружить атаку​


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

  • Мониторинг логов: Анализ логов Unbound на предмет ошибок валидации DNSSEC или аварийных завершений.
  • Сетевой анализ: Использование IDS/IPS для отслеживания DNS-трафика на предмет аномалий в структуре записей.
  • Проверка целостности: Регулярная проверка версий установленных пакетов и сравнение с известными уязвимыми версиями.

Специфичные сигнатуры для этой уязвимости в предоставленных данных отсутствуют.

Как проверить свою версию​


Для проверки версии установленного пакета unbound в Debian используйте следующие команды. Замените <имя-пакета> на unbound.

Bash:
# Проверка версии Debian
cat /etc/debian_version

# Проверка версии пакета через dpkg
dpkg-query -W -f='${Package} ${Version}\n' unbound

# Проверка доступных версий в репозитории
apt-cache policy unbound

Сравните полученную версию с уязвимыми версиями, указанными в разделе «Какие продукты и версии затронуты».

Исправление​


Основным способом устранения уязвимости является обновление пакета unbound до исправленной версии.

  • Debian unstable (sid): Обновите пакет до версии 1.26.1-1.
  • Debian 12 (bookworm), Debian 13 (trixie), Debian forky: Официальные исправления в этих ветках еще не выпущены (статус open). Рекомендуется следить за обновлениями в Debian Security Tracker и применять патчи сразу после их появления.

Для систем, где обновление невозможно, рассмотрите временные меры защиты, описанные ниже.

Временные меры защиты​


Пока официальные исправления не выпущены для стабильных веток Debian, можно применить следующие временные меры:

  • Ограничение доступа: Ограничьте доступ к DNS-серверу Unbound только для доверенных сетей или клиентов.
  • Отключение DNSSEC: Если возможно, временно отключите валидацию DNSSEC в конфигурации Unbound. Это снизит риск, но ослабит безопасность DNS.
  • Использование прокси: Разместите перед Unbound DNS-прокси, который может фильтровать или валидировать входящие запросы.

Эти меры не устраняют уязвимость, но снижают вероятность успешной атаки.

Как проверить устранение уязвимости​


После обновления пакета unbound проверьте, что уязвимость устранена:

  1. Убедитесь, что установлена исправленная версия (для sid — 1.26.1-1 или выше).
  2. Перезапустите сервис Unbound, чтобы изменения вступили в силу.
  3. Проведите тестирование с использованием уязвимой DNS-зоны (если возможно) или доверьтесь официальным данным о исправлении.
  4. Проверьте логи на предмет ошибок после обновления.

Команда для проверки версии после обновления:

Bash:
dpkg-query -W -f='${Package} ${Version}\n' unbound

Вывод​


CVE-2026-81642 представляет собой критическую угрозу для систем, использующих Unbound в качестве DNS-сервера. Уязвимость позволяет злоумышленнику удаленно выполнить код или вызвать отказ в обслуживании, контролируя вредоносную DNS-зону.

В Debian исправление доступно только для ветки unstable (sid), тогда как для стабильных релизов (bookworm, trixie, forky) патчи еще ожидаются. Администраторам рекомендуется срочно обновить системы, где это возможно, и применить временные меры защиты до выхода официальных обновлений.

Официальные источники​


  1. NVD — CVE-2026-81642
  2. Debian Security Tracker — CVE-2026-81642
  3. FIRST EPSS — CVE-2026-81642

История обновлений статьи​


  • 17.09.2026 — Опубликована первая версия материала.
 
Назад
Верх Низ