CVE-2010-0213: RRSIG query handling bug in BIND 9.7.1
If a query is made explicitly for a record of type 'RRSIG' to a validating recursive server running BIND 9.7.1 or 9.7.1-P1, and the server has one or more trust anchors configured statically and/or via DLV, then if the answer is not already in cache, the server enters a loop which repeatedly generates queries for RRSIGs to the authoritative servers for the zone containing the queried name.
Posting Date: 15 Jul 2010
Program Impacted: BIND
Versions Affected: 9.7.1, 9.7.1-P1
If a query is made explicitly for a record of type 'RRSIG' to a validating recursive server running BIND 9.7.1 or 9.7.1-P1, and the server has one or more trust anchors configured statically and/or via DLV, then if the answer is not already in cache, the server enters a loop which repeatedly generates queries for RRSIGs to the authoritative servers for the zone containing the queried name. This rarely occurs in normal operation, since RRSIGs are already included in responses to queries for the RR types they cover, when DNSSEC is enabled and the records exist.
We do not believe this bug to pose a significant operational risk. The versions of BIND affected are new, and constitute only a small part of the deployed base of DNS software in the world. Our continued internal review, and testing by an early adopter, found this issue before it was more widely deployed in production.
Active exploits: None known at this time.
Solution: Upgrade BIND to 9.7.1-P2. If using 9.7.0, remain on 9.7.0-P2.
BIND 9.7.1-P2 reverses a change that was introduced in BIND 9.7.1. The change attempted to correct the behavior of a validating recursive resolver when explicitly queried for records of type 'RRSIG'. These queries do not occur in normal DNSSEC operation, because RRSIG records are ordinarily returned along with the records they cover. However, a type-RRSIG query can be used for manual testing purposes. As a result of the change in 9.7.1, if the cache did not contain any RRSIG records for the name, such a query would trigger an endless loop of recursive queries to the authoritative server. BIND 9.7.1-P2 backs out the change, restoring the behavior prior to 9.7.1, which was not entirely correct but not harmful. It will be properly fixed in a future release.
Acknowledgements: Thank you to Marco Davids of SIDN for testing and finding the issue.
See our BIND 9 Security Vulnerability Matrix for a complete listing of Security Vulnerabilities and versions affected.
Do you still have questions? Questions regarding this advisory should go to email@example.com.
ISC Security Vulnerability Disclosure Policy: Details of our current security advisory policy and practice can be found in our Software Defect and Security Vulnerability Disclosure Policy.
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.