Microsoft has released a security advisory and updated software to address the Microsoft Windows SMB2 remote code execution vulnerability.
Microsoft Windows Vista SP2 and prior and Windows Server 2008 contain a vulnerability that could allow an unauthenticated, remote attacker to cause a denial of service (DoS) condition or execute arbitrary code.
The vulnerability is due to errors when processing protocol headers in Server Message Block version 2 (SMB2) Negotiate Protocol Request messages. An unauthenticated, remote attacker could exploit this vulnerability by sending a malicious network request to the vulnerable system. Successful exploitation could allow the attacker to cause the vulnerable system to restart, resulting in a DoS condition. Alternatively, the attacker may be able to execute arbitrary code.
Exploit code that can achieve code execution is publicly available; however, the exploit code does not work on Vista without SP1.
Microsoft confirmed this vulnerability in a security bulletin and released software updates.
Systems running the following versions of Microsoft Windows are vulnerable:
Microsoft Windows Vista SP2 and prior
Microsoft Windows Vista x64 Edition SP2 and prior
Microsoft Windows Server 2008 SP2 and prior
Microsoft Windows Server 2008 for x64-based Systems SP2 and prior
Microsoft Windows Server 2008 for Itanium-based Systems SP2 and prior
Attackers may require access to trusted, internal systems to trigger an exploit. Sites typically block SMB network requests from remote, untrusted sources, reducing the potential for an external attack.
Windows Vista systems without file sharing enabled may not have a vector that could be used for an exploit, and those with host-based firewalls enabled may block unsolicited SMB2 requests from untrusted or external systems, preventing exploitation. Windows Server systems may be more exposed, particularly systems that host file shares that must be widely accessible.
Proof-of-concept code may trigger a stop error on a targeted system, causing the system to fail and automatically restart, which results in a DoS condition while the system restarts.
The recent security advisory from Microsoft indicates the vulnerability could be exploited to accomplish code execution, and such an exploit has been publicly released.
Microsoft has released a security advisory at the following link: 975497. Microsoft has released a security bulletin at the following link: MS09-050
US-CERT has released a vulnerability note at the following link: VU#135940
An unauthenticated, remote attacker could exploit this vulnerability to execute arbitrary code with elevated privileges or to cause the affected system to fail and restart, resulting in a DoS condition.
The vulnerability is due to errors when processing protocol headers in SMB2 Negotiate Protocol Request messages. The _Smb2ValidateProviderCallback() function in the Windows SMB2 srv2.sys component fails to properly check the size of headers in SMB2 messages before using that input in memory operations. The processing of malformed input could cause an invalid pointer dereference, triggering a memory error.
An unauthenticated, remote attacker could exploit the vulnerability by sending a malicious request to the targeted system. As a result, the attacker could manipulate memory pointers, potentially causing memory corruption. The memory corruption could cause the system to fail and automatically restart, or the attacker could use the error to execute arbitrary code with elevated privileges.
Administrators are advised to apply the appropriate updates.
Administrators are advised to restrict network access to affected systems.
Administrators may consider disabling SMB2. This can be accomplished by using a script provided by Microsoft at the following link: 975497
Administrators are advised to monitor critical systems.
Microsoft customers can obtain updates directly by using the links in the security bulletin. These updates are also distributed by Windows automatic update features and available on the Windows Update website. Microsoft Windows Server Update Services (WSUS), Systems Management Server, and System Center Configuration Manager can assist administrators in deploying software updates.
Version 6, September 29, 2009, 5:27 PM: A clarification was necessary in the text of the Microsoft Windows SMB2 remote code execution vulnerability.
Version 5, September 29, 2009 11:10 AM: Functional exploit code is publicly available for the Microsoft Windows SMB2 remote code execution vulnerability.
Version 4, September 21, 2009 11:51 AM: Microsoft has released an official workaround for the Microsoft Windows SMB2 remote code execution vulnerability.
Version 3, September 18, 2009, 4:45PM: Additional technical information is available regarding the Microsoft Windows SMB2 remote code execution vulnerability. US-CERT has released a vulnerability note.
Version 2, September 9, 2009, 10:52 AM: Microsoft has released a security advisory to address the Microsoft Windows SMB2 remote code execution vulnerability.
Version 1, September 8, 2009, 11:49 AM: Microsoft Windows Vista contains a vulnerability that could allow an unauthenticated, remote attacker to cause a denial of service condition. Updates are not available.
The urgency and severity ratings of this alert are not tailored to individual users; users may value alerts differently based upon their network configurations and circumstances. THE ALERT, AND INFORMATION CONTAINED THEREIN, ARE PROVIDED ON AN "AS IS" BASIS AND DO NOT IMPLY ANY KIND OF GUARANTEE OR WARRANTY, INCLUDING THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. YOUR USE OF THE ALERT, AND INFORMATION CONTAINED THEREIN, OR MATERIALS LINKED FROM THE ALERT, IS AT YOUR OWN RISK. INFORMATION IN THIS ALERT AND ANY RELATED COMMUNICATIONS IS BASED ON OUR KNOWLEDGE AT THE TIME OF PUBLICATION AND IS SUBJECT TO CHANGE WITHOUT NOTICE. CISCO RESERVES THE RIGHT TO CHANGE OR UPDATE ALERTS AT ANY TIME.