[From nobody Mon Jul 20 22:07:05 2026
Received: (at submit) by bugs.debian.org; 20 Jul 2026 19:48:28 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-111.0 required=4.0 tests=ALL_TRUSTED,BAYES_00,
 DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FOURLA,
 FROMDEVELOPER,SPF_HELO_NONE,SPF_PASS,USER_IN_DKIM_WELCOMELIST,
 XMAILER_REPORTBUG autolearn=ham autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 43; hammy, 150; neutral, 165; spammy,
 0. spammytokens:
 hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
 0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
 0.000-+--H*RT:311, 0.000-+--H*RT:108
Return-path: &lt;carnil@debian.org&gt;
Received: from stravinsky.debian.org ([2001:41b8:202:deb::311:108]:38662)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;carnil@debian.org&gt;) id 1wltyV-005bkq-2Y
 for submit@bugs.debian.org; Mon, 20 Jul 2026 19:48:28 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; 
 s=smtpauto.stravinsky;
 h=X-Debian-User:Date:Message-ID:Subject:To:From:
 Content-Transfer-Encoding:MIME-Version:Content-Type:Reply-To:Cc:Content-ID:
 Content-Description:In-Reply-To:References;
 bh=IqyEFAbn8HQUwAe9JVW3z4+/klzfPf3FXr9O2yn9PUw=; b=rFMq8sgxWiUerhyIEcCKdrD2mt
 7+wEDYoCcPBWz+1uuv5jdBafGJ7zKC8SmaIKC3mRPrqI3iZI/bJVa1qlqjI+sakFbms/EyIQywRd0
 gdF2GNRBbaxdLAt8Pkw80+NmkeW257X2VMyfhFFg/VDok7xfBkEwR90HC6RXfb9J4w2FcAuL9pxZQ
 LBYSe3drAlsHkGCScU5VrW3T3SrF5/2iNy7vu3vNMIkV7iqBaBQTt+hAk9Ughl4kw2V6OrEUE+QvR
 UFjJ2X9Errhp3Agz7C8t7X9W7wZgo4X8hymYmWy8SgoB2VyIyW9JPUsz0Xy2aLsBdZxLyNAZGhJSI
 cxIUG8mQ==;
Received: from authenticated-user by stravinsky.debian.org with esmtpsa
 (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;carnil@debian.org&gt;) id 1wltyT-001fuH-1q
 for submit@bugs.debian.org; Mon, 20 Jul 2026 19:48:26 +0000
Received: from eldamar.lan (localhost [127.0.0.1])
 by eldamar.lan (Postfix) with ESMTP id 3A2CCBE2EE7
 for &lt;submit@bugs.debian.org&gt;; Mon, 20 Jul 2026 21:48:23 +0200 (CEST)
Content-Type: text/plain; charset=&quot;us-ascii&quot;
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: Salvatore Bonaccorso &lt;carnil@debian.org&gt;
To: Debian Bug Tracking System &lt;submit@bugs.debian.org&gt;
Subject: libnet-dns-perl: CVE-2026-64193 CVE-2026-64194
Message-ID: &lt;178457690318.741501.5097559482442261734.reportbug@eldamar.lan&gt;
X-Mailer: reportbug 13.2.0+nmu1
Date: Mon, 20 Jul 2026 21:48:23 +0200
X-Debian-User: carnil
Delivered-To: submit@bugs.debian.org

Source: libnet-dns-perl
Version: 1.55-1
Severity: important
Tags: security upstream
X-Debbugs-Cc: carnil@debian.org, Debian Security Team &lt;team@security.debian.org&gt;

Hi,

The following vulnerabilities were published for libnet-dns-perl.

CVE-2026-64193[0]:
| Net::DNS versions through 1.55 for Perl allow remote execution
| injection via EDNS EXTENDED ERROR.
| Net::DNS::RR::OPT::EXTENDED_ERROR::_decompose parses the EXTRA-TEXT
| field of an EDNS EXTENDED-ERROR option (RFC 8914) by tokenising the
| raw bytes and passing the result to Perl's eval. There is some
| escaping done for $ and @, but not for backticks. This can be
| exploited for command execution if $pkt-&gt;edns-&gt;option('EXTENDED-
| ERROR') is called in array context, for example with a payload of
| {0:`&quot;&lt;command&gt;&quot;`} in EXTRA-TEXT.


CVE-2026-64194[1]:
| 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 &lt; $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-&gt;new(\$wire)` i.e. any point where the library
| decodes a DNS message from the network.


If you fix the vulnerabilities please also make sure to include the
CVE (Common Vulnerabilities &amp; Exposures) ids in your changelog entry.

For further information see:

[0] https://security-tracker.debian.org/tracker/CVE-2026-64193
    https://www.cve.org/CVERecord?id=CVE-2026-64193
[1] https://security-tracker.debian.org/tracker/CVE-2026-64194
    https://www.cve.org/CVERecord?id=CVE-2026-64194

Please adjust the affected versions in the BTS as needed.

Regards,
Salvatore
]