p PatchFirst

CVE-2026-64194

CVE-2026-64194 · Net::DNS versions through 1.55 for Perl allow Denial of Service via deep DNS compression pointer chains

Здесь приведены факты из открытых источников об уязвимостях. Перед обновлением ознакомьтесь с исходным сообщением.

Net::DNS versions through 1.55 for Perl allow Denial of Service via deep DNS compression pointer chains. Net::DNS::DomainName::decode follows RFC 1035 compression pointers by recursing into itself with no depth limit. It is possible to construct a name which saturates the call stack (at least with larger TCP responses), leading to a potential Denial of Service. The guard `$link < $offset` prevents forward and circular chains, but still allows arbitrarily long backward chains. The per-offset cache (`$cache`) is populated at the start of each call and short-circuits only re-traverses of the same offset - the initial descent through a fresh chain still recurses at full depth. A crafted packet can chain two-byte compression pointers so that each one points two bytes earlier than the previous, producing a chain length of `offset / 2`. For the 14-bit pointer field (max offset 16383) this gives up to ~8191 recursive frames. For a TCP DNS message the limit is the 16-bit length field (~32767 frames). Perl's default C stack handles only a few thousand frames; beyond that the process receives SIGSEGV or similar, which is a denial-of-service for any application parsing untrusted DNS data. The vulnerability is triggered by `Net::DNS::Packet->new(\$wire)` i.e. any point where the library decodes a DNS message from the network.

CVSS 7.5 · Высокий · EPSS 0,7% · Есть исправление

Опубликовано
Обновлено

Стек: system

Затронутые продукты и версии

  • net::dns

    Версии
    • ≥ 0, ≤ 1.55: Затронуто (custom)

    Нет опубликованного исправления

  • libnet-dns-perl Debian:12

    Версии
    • 1.36-1
    Затронутые диапазоны версий
    • ECOSYSTEM: < 1.36-1+deb12u1

    Обновитесь до 1.36-1+deb12u1

  • libnet-dns-perl Debian:13

    Версии
    • 1.50-1
    • 1.53-1
    • 1.54-1
    • 1.55-1
    Затронутые диапазоны версий
    • ECOSYSTEM: < 1.56-0+deb13u1

    Обновитесь до 1.56-0+deb13u1

  • libnet-dns-perl Debian:14

    Версии
    • 1.50-1
    • 1.53-1
    • 1.54-1
    • 1.55-1
    Затронутые диапазоны версий
    • ECOSYSTEM: < 1.56-1

    Обновитесь до 1.56-1

  • libnet-dns-perl Ubuntu:14.04:LTS

    Версии
    • 0.68-1.2
    • 0.68-1.2build1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:16.04:LTS

    Версии
    • 0.81-2
    • 0.81-2build1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:18.04:LTS

    Версии
    • 1.10-2
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:20.04:LTS

    Версии
    • 1.20-1
    • 1.21-1
    • 1.22-1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:22.04:LTS

    Версии
    • 1.29-1
    • 1.32-1
    • 1.33-1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:24.04:LTS

    Версии
    • 1.39-2ubuntu1
    • 1.40-1ubuntu1
    • 1.44-1ubuntu1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:26.10

    Версии
    • 1.54-1ubuntu1
    • 1.55-1ubuntu1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

  • libnet-dns-perl Ubuntu:26.04:LTS

    Версии
    • 1.50-1ubuntu1
    • 1.53-1ubuntu1
    • 1.54-1ubuntu1
    Затронутые диапазоны версий
    • ECOSYSTEM: (−∞, +∞)

    Нет опубликованного исправления

Первоисточники

Проверьте свой сервер →