Microsoft Windows x64 NtQueryValueKey Information Disclosure Vulnerability
Windows is a family of Microsoft operating systems.
Local exploitation of an information disclosure vulnerability in Microsoft Corp.'s Windows could allow an attacker to obtain sensitive information from the kernel.
The vulnerability occurs when handling an argument to the NtQueryValueKey() function. This value is passed in directly from user space and is not properly verified before being used in a memory copy allocation. Specifically, a signed comparison is made with this value, which can allow for a negative value to pass a length check. This results in a large amount of data being copied from a kernel heap buffer into a userland buffer. The exact amount of the copy can be controlled by limiting the amount of user pages mapped in the destination buffer. This results in a precisely controlled information disclosure of kernel memory.
Exploitation of this vulnerability results in the execution of arbitrary code with the privileges of the user viewing the Web page. To exploit this vulnerability, a targeted user must load a malicious Web page that an attacker created. An attacker typically accomplishes this via social engineering or injecting content into compromised, trusted sites. After the user visits the malicious Web page, no further user interaction is needed.
To exploit this vulnerability, an attacker needs to be able to control the area of memory that is unintialized and used for the object. An attacker has several methods of doing this via reallocating it or by heap spraying.
The following Microsoft products are vulnerable:
- Windows XP Professional x64 Edition Service Pack 2
- Windows Server 2003 x64 Edition Service Pack 2
- Windows Vista x64 Edition Service Pack 2
- Windows Server 2008 for x64-based Systems Service Pack 2
- Windows 7 for x64-based Systems
- Windows 7 for x64-based Systems Service Pack 1
- Windows Server 2008 R2 for x64-based Systems
- Windows Server 2008 R2 for x64-based Systems Service Pack 1
iDefense is currently unaware of any workarounds for this issue. The vulnerability occurs in the core kernel code and cannot be disabled.
Microsoft has released patches which address this issue. For more information, consult their advisory at the following URL:
The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2012-2529 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org/), which standardizes names for security problems.
04/18/2012 Initial Vendor Notification
04/18/2012 Initial Vendor Response
10/09/2012 Coordinated Public Disclosure
The discoverer of this vulnerability wishes to remain anonymous.
Get paid for vulnerability research
Free tools, research and upcoming events
Copyright © 2012 Verisign, Inc.
Permission is granted for the redistribution of this alert electronically. It may not be edited in any way without the express written consent of iDefense. If you wish to reprint the whole or any part of this alert in any other medium other than electronically, please e-mail customer service for permission.
Disclaimer: The information in the advisory is believed to be accurate at the time of publishing based on currently available information. Use of the information constitutes acceptance for use in an AS IS condition. There are no warranties with regard to this information. Neither the author nor the publisher accepts any liability for any direct, indirect, or consequential loss or damage arising from use of, or reliance on, this information.