Home    |    View Topics    |    Search    |    Contact Us    |   



Category:   Application (Generic)  >   Autorun Vendors:   Microsoft
Microsoft Windows Guidelines for Disabling AutoRun are Ineffective and May Permit Code Execution
SecurityTracker Alert ID:  1021629
SecurityTracker URL:
CVE Reference:   CVE-2009-0243   (Links to External Site)
Updated:  Jan 29 2009
Original Entry Date:  Jan 22 2009
Impact:   Execution of arbitrary code via local system
Fix Available:  Yes  Vendor Confirmed:  Yes  

Description:   A vulnerability was reported in Microsoft Windows AutoRun. The vendor's guidelines for disabling the AutoRun feature do not disable automatic code execution.

Contrary to guidelines provided by the vendor, setting the Autorun registry value to 0 does not fully prevent newly connected devices from automatically running code specified by the 'Autorun.inf' file. In addition, setting the NoDriveTypeAutorun registry value to 0xFF does not fully prevent the system from automatically running code specified by the 'Autorun.inf' file when the target user browses the connected device.

The original advisory is available at:

Impact:   Code on a connected device may be executed.
Solution:   The US-CERT advisory provides instructions on how to properly disable the AutoRun feature.

The US-CERT advisory is available at:

Vendor URL: (Links to External Site)
Cause:   Configuration error
Underlying OS:  Windows (Any)

Message History:   None.

 Source Message Contents

Subject:  US-CERT Technical Cyber Security Alert TA09-020A -- Microsoft Windows Does Not Disable AutoRun Properly

Hash: SHA1

                    National Cyber Alert System

              Technical Cyber Security Alert TA09-020A

Microsoft Windows Does Not Disable AutoRun Properly

   Original release date: January 20, 2009
   Last revised: --
   Source: US-CERT

Systems Affected

     * Microsoft Windows


   Disabling AutoRun on Microsoft Windows systems can help prevent the
   spread of malicious code. However, Microsoft's guidelines for
   disabling AutoRun are not fully effective, which could be
   considered a vulnerability.

I. Description

   Microsoft Windows includes an AutoRun feature, which can
   automatically run code when removable devices are connected to the
   computer. AutoRun (and the closely related AutoPlay) can
   unexpectedly cause arbitrary code execution in the following
   * A removable device is connected to a computer. This includes, but
   is not limited to, inserting a CD or DVD, connecting a USB or
   Firewire device, or mapping a network drive. This connection can
   result in code execution without any additional user interaction.
   * A user clicks the drive icon for a removable device in Windows
   Explorer. Rather than exploring the drive's contents, this action
   can cause code execution.

   * The user selects an option from the AutoPlay dialog that is
   displayed when a removable device is connected.  Malicious
   software, such as W32.Downadup, is using AutoRun to
   spread. Disabling AutoRun, as specified in the CERT/CC
   Vulnerability Analysis blog, is an effective way of helping to
   prevent the spread of malicious code.
   The Autorun and NoDriveTypeAutorun registry values are both
   ineffective for fully disabling AutoRun capabilities on Microsoft
   Windows systems. Setting the Autorun registry value to 0 will not
   prevent newly connected devices from automatically running code
   specified in the Autorun.inf file. It will, however, disable Media
   Change Notification (MCN) messages, which may prevent Windows from
   detecting when a CD or DVD is changed. According to Microsoft,
   setting the NoDriveTypeAutorun registry value to 0xFF "disables
   Autoplay on all types of drives." Even with this value set, Windows
   may execute arbitrary code when the user clicks the icon for the
   device in Windows Explorer.

II. Impact

   By placing an Autorun.inf file on a device, an attacker may be able
   to automatically execute arbitrary code when the device is
   connected to a Windows system. Code execution may also take place
   when the user attempts to browse to the software location with
   Windows Explorer.

III. Solution

   Disable AutoRun in Microsoft Windows
   To effectively disable AutoRun in Microsoft Windows, import the
   following registry value:
   [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]
   To import this value, perform the following steps:
   * Copy the text
   * Paste the text into Windows Notepad
   * Save the file as autorun.reg
   * Navigate to the file location
   * Double-click the file to import it into the Windows registry

   Microsoft Windows can also cache the AutoRun information from
   mounted devices in the MountPoints2 registry key. We recommend
   restarting Windows after making the registry change so that any
   cached mount points are reinitialized in a way that ignores the
   Autorun.inf file. Alternatively, the following registry key may be
   Once these changes have been made, all of the AutoRun code
   execution scenarios described above will be mitigated because
   Windows will no longer parse Autorun.inf files to determine which
   actions to take. Further details are available in the
   CERT/CC Vulnerability Analysis blog. Thanks to Nick Brown and Emin
   Atac for providing the workaround.

IV. References

 * The Dangers of Windows AutoRun -

 * US-CERT Vulnerability Note VU#889747 -

 * Nick Brown's blog: Memory stick worms -

 * TR08-004 Disabling Autorun -

 * How to Enable or Disable Automatically Running CD-ROMs -

 * NoDriveTypeAutoRun -

 * Autorun.inf Entries -

 * W32.Downadup -

 * MS08-067 Worm, Downadup/Conflicker -

 * Social Engineering Autoplay and Windows 7 -


   The most recent version of this document can be found at:


   Feedback can be directed to US-CERT Technical Staff. Please send
   email to <> with "TA09-020A Feedback VU#889747" in
   the subject.

   For instructions on subscribing to or unsubscribing from this
   mailing list, visit <>.

   Produced 2009 by US-CERT, a government organization.

   Terms of use:


Revision History
  January 20, 2009: Initial release

Version: GnuPG v1.4.5 (GNU/Linux)



Go to the Top of This SecurityTracker Archive Page

Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2020, LLC