CVE-2012-3868: High TCP Query Load Can Trigger a Memory Leak in BIND 9
  • 10 Dec 2018
  • 3 Minutes to read
  • Contributors
  • Dark
    Light
  • PDF

CVE-2012-3868: High TCP Query Load Can Trigger a Memory Leak in BIND 9

  • Dark
    Light
  • PDF

Article Summary

Title: High TCP Query Load Can Trigger a Memory Leak in BIND 9

Summary:

Under heavy incoming TCP query loads, named experiences a memory leak which may lead to significant reductions in query response performance. Additionally, this can trigger an automatic shutdown if named is running on a system that kills out-of-memory processes.

CVE: CVE-2012-3868

Document version: 2.1

Posting date: 24 July 2012

Program impacted: BIND9

Versions affected: 9.9.0 through 9.9.1-P1

Severity: High

Exploitable: Remotely

Description:

BIND 9 tracks incoming queries using a structure called "ns_client". When a query has been answered and the ns_client structure is no longer needed, it is stored on a queue of inactive ns_clients. When a new ns_client is needed to service a new query, the queue is checked to see if any inactive ns_clients are available before a new one is allocated; this speeds up the system by avoiding unnecessary memory allocations and de-allocations. However, when the queue is empty, and one thread inserts an ns_client into it while another thread attempts to remove it, a race bug could cause the ns_client to be lost; since the queue would appear empty in that case, a new ns_client would be allocated from memory. This condition occurred very infrequently with UDP queries but much more frequently under high TCP query loads; over time, the number of allocated but misplaced ns_client objects could grow large enough to affect system performance, and could trigger an automatic shutdown of the named process on systems with an "OOM killer" (out of memory killer) mechanism.

CVSS Score: 5.0

CVSS Equation: (AV:N/AC:L/Au:N/C:N/I:N/A:P)

For more information on the Common Vulnerability Scoring System and to obtain your specific environmental score please visit:http://nvd.nist.gov/cvss.cfm?calculator&adv&version=2&vector=(AV:N/AC:L/Au:N/C:N/I:N/A:P).

Workarounds: None available

Solution: Upgrade to BIND 9 version 9.9.1-P2.

BIND 9.9.1-P2 is available from https://www.isc.org/downloads

Exploit Status: Not known

Acknowledgment: ISC would like to thank Kevin Sheehan of Infoblox, Inc., and Anand Buddhdev from the RIPE NCC.

Document Revision History:

1.0 - Phase 1 contacted, 11 July 2012
1.1 - Phase 1 re-issued, 17 July 2012. Re-released this patch with additional code to Phase 1
1.2 - Phase 2 & 3 notified, 23 July 2012
2.0 - Phase 4-Public release, 24 July 2012
2.1 - Added Chinese Translation, 30 July 2012

Related Documents:

If you'd like more information on ISC Subscription Support and Advance Security Notifications, please visit https://www.isc.org/support/.

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 security-officer@isc.orgTo report a new issue, please encrypt your message using security-officer@isc.org's PGP key which can be found here: https://www.isc.org/downloads/software-support-policy/openpgp-key/. If you are unable to use encrypted email, you may also report new issues at: https://www.isc.org/community/report-bug/.

Note: ISC patches only currently supported versions. When possible, we indicate EOL versions affected. (For current information on which versions are actively supported, please see https://www.isc.org/downloads/.)

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.

This Knowledgebase article is the complete and official security advisory document.

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.