Operational Notification: Domain with apex CNAME and unsigned delegation fails to resolve

Cathy Almond cathya at isc.org
Wed Oct 7 17:28:08 UTC 2026


Hello BIND users,

We have just published an Operational Notification at:

https://kb.isc.org/docs/apex-cname-unsigned-delegation

The text version is included below. This is an issue you should be aware 
of, but it is not a software vulnerability, so there is no associated 
updated version of BIND.

- ISC Support

--------------------------

TITLE: Operational Notification: Domain with apex CNAME and unsigned 
delegation fails to resolve

DOCUMENT VERSION: 1.0

POSTING DATE: 7 October 2026

CANONICAL URL: https://kb.isc.org/docs/apex-cname-unsigned-delegation

PROGRAM IMPACTED: BIND

VERSIONS AFFECTED: 9.20.26 to 9.20.29

DESCRIPTION

   A BIND resolver may fail to resolve records within a child zone when 
all of the following are true:

* The child zone is delegated from a DNSSEC-signed parent zone
* The child zone is itself not DNSSEC-signed
* The child zone contains a CNAME record at the zone apex

   While a CNAME at the zone apex is a violation of DNS standards, 
preventing resolution of other records in the same zone was not intended 
behavior.

SOLUTION

   A fix to the BIND software has been developed.  It is scheduled for 
inclusion in BIND 9.20.30, which is currently planned for public release 
on 21 October 2026.  Note that plans are subject to change.

   A preliminary source code fix is available.  This fix is still 
undergoing integration testing.  Operators considering a source patch 
must weigh the risks against their individual needs.  For more 
information, consult the bug report on the ISC GitLab website (see 
"References", below).

WORKAROUNDS

   Operators encountering a domain name that cannot be resolved due to 
this problem can configure their resolver to skip DNSSEC checking for 
the domain in question.

   In "named.conf", the "validate-except" statement can be used to 
exempt a domain name (and its children) from DNSSEC validation.  The 
statement can appear in the global "options" block, or in a "view" 
block.  In both cases the syntax would appear similar to the below.  An 
"rndc reconfig" or daemon restart will be required for this change to 
take effect.

	validate-except { example.com; };

   Alternatively, a negative trust anchor (NTA) can be added using the 
"rndc nta" command.  NTAs have a built-in expiration timer 
("nta-lifetime", default 1 hour, maximum 1 week).  However, they can be 
added to a running server without a reconfig, and thus are less 
disruptive to active queries.

	rndc nta -lifetime 7d example.com

   Both mechanisms can be used together.  For example, "rndc nta" might 
be done immediately, with a config file change and reconfig scheduled 
for a maintenance window.

DIAGNOSTICS

   When experiencing this problem, BIND may log messages similar to the 
following:

	validating example.com/CNAME: checking existence of DS at 'example.com'
	validating example.com/CNAME: fetch would not advance the alias chain: 
aborting validation
	deadlock found resolving 'example.com/A/IN'

   The "deadlock" message is logged at level INFO in category 
"lame-severs".  The two "validating" messages are logged at DEBUG level 
3 in category "dnssec".

MORE INFORMATION

   CNAME records state that a given owner name (left-hand side) should 
be replaced with the canonical name given on the right-hand side.  At 
the same time, SOA and NS records are required to exist at the zone apex 
with the zone name as owner.  Both conditions cannot be true at once. 
The DNS specifications solve this conflict by prohibiting CNAME records 
at the zone apex.

   The intended behavior in BIND is to recognize CNAME records at the 
zone apex.  Recent changes to harden BIND against unrelated attacks 
accidentally resulted in the invalid CNAME construct instead causing the 
entire zone to fail validation.

REFERENCES

* ISC BIND bug report
     * "Deadlock detection triggered when querying DS for insecure 
delegation to child zone with an apex CNAME"
     * https://gitlab.isc.org/isc-projects/bind9/-/work_items/6435
* ISC blog post
     * "CNAME at the apex of a zone"
     * https://www.isc.org/blogs/cname-at-the-apex-of-a-zone/
* BIND ARM
    * "rndc nta" command
    * 
https://bind9.readthedocs.io/en/v9.20.29/manpages.html#cmdoption-rndc-arg-nta
* BIND ARM
    * "nta-lifetime" statement
    * 
https://bind9.readthedocs.io/en/v9.20.29/reference.html#namedconf-statement-nta-lifetime
* BIND ARM
    * "validate-except" statement
    * 
https://bind9.readthedocs.io/en/v9.20.29/reference.html#namedconf-statement-validate-except
* RFC-9499
     * "DNS Terminology"
     * https://www.rfc-editor.org/rfc/rfc9499.html

DOCUMENT REVISION HISTORY

- 1.0 Initial publication, 7 October 2026

DO YOU STILL HAVE QUESTIONS?

   General questions and discussion can be raised on the bind-users 
mailing list: https://lists.isc.org/mailman/listinfo/bind-users 
Developer contributions can be made on the ISC GitLab issue for the 
problem (see above).

   ISC customers with an active support agreement may open a support ticket.

ISC SECURITY VULNERABILITY DISCLOSURE POLICY

   Details of our current security advisory policy and practice can be 
found in the ISC Software Defect and Security Vulnerability Disclosure 
Policy at: https://kb.isc.org/docs/aa-00861

HOW TO SUBMIT A BUG REPORT TO ISC

   If you have encountered a problem with BIND (or with any other ISC 
software), details on how to submit a report can be found at: 
https://www.isc.org/reportbug/

LEGAL DISCLAIMER

   Internet Systems Consortium (ISC) is providing this notice on an "AS 
IS" basis. No warranty or guarantee of any kind is expressed in this 
notice and none should be implied. ISC expressly excludes and disclaims 
any warranties regarding this notice or materials referred to in this 
notice, including, without limitation, any implied warranty of 
merchantability, fitness for a particular purpose, absence of hidden 
defects, or of non-infringement. Your use or reliance on this notice or 
materials referred to in this notice is at your own risk. ISC may change 
this notice at any time. A stand-alone copy or paraphrase of the text of 
this document that omits the document URL is an uncontrolled copy. 
Uncontrolled copies may lack important information, be out of date, or 
contain factual errors.



More information about the bind-announce mailing list