Below are the latest details available regarding this security advisory:

Clarifications on workarounds from the recent IE advisory

Microsoft is hosting two webcasts to address customer questions on these bulletins: on December 17, 2008, at 1:00 PM Pacific Time (US & Canada) and December 18, 2008, at 11:00 AM Pacific Time. Register now for the December 17 webcast and the December 18 webcast. Afterwards, these webcasts are available on-demand. For more information, see Microsoft Security Bulletin Summaries and Webcasts.

Microsoft Security Bulletin Summary for December 2008

Associated KB article  (961051)

Associated MSRC Blog

 

Advisory link and details:

Microsoft Security Advisory  (961051)
Vulnerability in Internet Explorer Could Allow Remote Code Execution
Published: December 10, 2008 | Updated: December 15, 2008

Microsoft is continuing its investigation of public reports of attacks against a new vulnerability in Internet Explorer. Our investigation so far has shown that these attacks are only against Windows Internet Explorer 7 on supported editions of Windows XP Service Pack 2, Windows XP Service Pack 3, Windows Server 2003 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Vista, Windows Vista Service Pack 1, and Windows Server 2008. Microsoft Internet Explorer 5.01 Service Pack 4, Microsoft Internet Explorer 6 Service Pack 1, Microsoft Internet Explorer 6, and Windows Internet Explorer 8 Beta 2 on all supported versions of Microsoft Windows are potentially vulnerable.

This update to the advisory contains information about a new workaround and a recommendation on the most effective workarounds.

The vulnerability exists as an invalid pointer reference in the data binding function of Internet Explorer. When data binding is enabled (which is the default state), it is possible under certain conditions for an object to be released without updating the array length, leaving the potential to access the deleted object's memory space. This can cause Internet Explorer to exit unexpectedly, in a state that is exploitable.

At this time, we are aware only of attacks that attempt to use this vulnerability against Windows Internet Explorer 7. Our investigation of these attacks so far has verified that they are not successful against customers who have applied the workarounds listed in this advisory. Additionally, there are mitigations that increase the difficulty of exploiting this vulnerability.

We are actively working with partners in our Microsoft Active Protections Program (MAPP) and our Microsoft Security Response Alliance (MSRA) programs to provide information that they can use to provide broader protections to customers. In addition, we’re actively working with partners to monitor the threat landscape and take action against malicious sites that attempt to exploit this vulnerability. Current trending indicates that there may be attempts to utilize SQL Injection attacks against Web sites to load attack code on those Web sites. If you’re a Web site operation, please review Microsoft Security Advisory (954462), which provides information on tools you can use to analyze your Web site’s code to help protect against SQL Injection attacks.

We are actively investigating the vulnerability that these attacks attempt to exploit. We will continue to monitor the threat environment and update this advisory if this situation changes. On completion of this investigation, Microsoft will take the appropriate action to protect our customers, which may include providing a solution through a service pack, our monthly security update release process, or an out-of-cycle security update, depending on customer needs.

Microsoft continues to encourage customers to follow the "Protect Your Computer" guidance of enabling a firewall, applying all software updates and installing anti-virus and anti-spyware software. Additional information can be found at Security at home.

Mitigating Factors:

• Protected Mode in Internet Explorer 7 and Internet Explorer 8 Beta 2 in Windows Vista limits the impact of the vulnerability.
 
• By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone.
 
• An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less affected than users who operate with administrative user rights.
 
• Currently known attacks cannot exploit this issue automatically through e-mail.
 


General Information Overview

Purpose of Advisory: To provide customers with initial notification of the publicly disclosed vulnerability. For more information see the Mitigating Factors, Workarounds, and Suggested Actions sections of this security advisory.

Advisory Status: The issue is currently under investigation.

Recommendation: Review the suggested actions and configure as appropriate.

References Identification
CVE Reference
 CVE-2008-4844
 
Microsoft Knowledge Base Article 961051
 

This advisory discusses the following software.

Related Software
Microsoft Windows 2000 Service Pack 4
 
Windows XP Service Pack 2
 
Windows XP Service Pack 3
 
Windows XP Professional x64 Edition
 
Windows XP Professional x64 Edition Service Pack 2
 
Windows Server 2003 Service Pack 1
 
Windows Server 2003 Service Pack 2
 
Windows Server 2003 x64 Edition
 
Windows Server 2003 x64 Edition Service Pack 2
 
Windows Server 2003 with SP1 for Itanium-based Systems
 
Windows Server 2003 with SP2 for Itanium-based Systems
 
Windows Vista
 
Windows Vista Service Pack 1
 
Windows Vista x64 Edition
 
Windows Vista x64 Edition Service Pack 1
 
Windows Server 2008 for 32-bit Systems
 
Windows Server 2008 for x64-based Systems
 
Windows Server 2008 for Itanium-based Systems
 
Microsoft Internet Explorer 5.01 Service Pack 4 for Microsoft Windows 2000 Service Pack 4
 
Microsoft Internet Explorer 6 Service Pack 1 for Microsoft Windows 2000 Service Pack 4
 
Microsoft Internet Explorer 6 for Windows XP Service Pack 2, Windows XP Service Pack 3, Windows XP Professional x64 Edition, and Windows XP Professional x64 Edition Service Pack 2
 
Microsoft Internet Explorer 6 for Windows Server 2003 Service Pack 1 and Service Pack 2, Windows Server 2003 with SP1 for Itanium-based Systems and Windows Server 2003 with SP2 for Itanium-based Systems, and Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2
 
Windows Internet Explorer 7 for Windows XP Service Pack 2 and Windows XP Service Pack 3, and Windows XP Professional x64 Edition and Windows XP Professional x64 Edition Service Pack 2
 
Windows Internet Explorer 7 for Windows Server 2003 Service Pack 1 and Windows Server 2003 Service Pack 2, Windows Server 2003 with SP1 for Itanium-based Systems and Windows Server 2003 with SP2 for Itanium-based Systems, and Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2
 
Windows Internet Explorer 7 in Windows Vista and Windows Vista Service Pack 1, and Windows Vista x64 Edition and Windows Vista x64 Edition Service Pack 1
 
Windows Internet Explorer 7 in Windows Server 2008 for 32-bit Systems
 
Windows Internet Explorer 7 in Windows Server 2008 for Itanium-based Systems
 
Windows Internet Explorer 7 in Windows Server 2008 for x64-based Systems
 
Windows Internet Explorer 8 Beta 2 for Windows XP Service Pack 2 and Windows XP Service Pack 3, and Windows XP Professional x64 Edition and Windows XP Professional x64 Edition Service Pack 2
 
Windows Internet Explorer 8 Beta 2 for Windows Server 2003 and Windows Server 2003 Service Pack 2, and Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2
 
Windows Internet Explorer 8 Beta 2 in Windows Vista and Windows Vista Service Pack 1, and Windows Vista x64 Edition and Windows Vista x64 Edition Service Pack 1
 
Windows Internet Explorer 8 Beta 2 in Windows Server 2008 for 32-bit Systems
 
Windows Internet Explorer 8 Beta 2 in Windows Server 2008 for x64-based Systems
 

Frequently Asked Questions

What is the scope of the advisory?
Microsoft is aware of a new vulnerability that affects Internet Explorer. The vulnerability in Internet Explorer affects the software that is listed in the Overview section.

Is this a security vulnerability that requires Microsoft to issue a security update?
Upon completion of this investigation, Microsoft will take the appropriate action to help protect our customers. This may include providing a security update through our monthly release process, or providing an out-of-cycle security update, depending on our customer needs.

How could an attacker exploit this vulnerability?
An attacker could host a specially crafted Web site that is designed to exploit this vulnerability through Internet Explorer and then convince a user to view the Web site. The attacker could also take advantage of compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger message that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and reading e-mail messages or is visiting Web sites for any malicious action to occur. Therefore, any systems where e-mail messages are read or where Internet Explorer is used frequently, such as workstations or terminal servers, are at the most risk from this vulnerability. However, best practices for servers discourage users from browsing and reading e-mail on servers, to reduce the level of vulnerability.

Which of the workarounds should I apply to my system in order to be protected?
Based on our investigation, setting the Internet zone security setting to High will protect users from known attacks. However, for the most effective protection, customers should evaluate a combination of using the High security setting in conjunction with one of the following workarounds.

• Disable XML Island functionality
 
• Restrict Internet Explorer from using OLEDB32.dll with an Integrity Level ACL
 
• Disable Row Position functionality of OLEDB32.dll
 
• Unregister OLEDB32.dll
 
• Use ACL to disable OLEDB32.dll
 

For additional workaround details, please see the following post: http://blogs.technet.com/swi/archive/2008/12/12/Clarification-on-the-various-workarounds-from-the-recent-IE-advisory.aspx#workarounds.

Each of these workarounds is equally effective in protecting customers; however, each workaround has different impacts based on the environment in which they are applied. We encourage customers to evaluate which of the workarounds would be least impactful to their environment, based on the impact statements included with each workaround.

How does configuring the Internet zone security setting to High protect me from this vulnerability?
Setting the Internet zone security setting to High protects against all currently known exploits of this vulnerability by disabling scripting, disabling less secure features in Internet Explorer, and blocks known techniques used to bypass Data Execution Prevention (DEP). It is important to note that the vulnerable code may be reached even with these protections in place, however current attacks would not be successful with these workarounds in place. We will continue to monitor the threat environment and update this advisory if this situation changes.

How does Protected Mode in Internet Explorer 7 and Internet Explorer 8 Beta 2 on Windows Vista and later protect me from this vulnerability?
Internet Explorer 7 and Internet Explorer 8 Beta 2 in Windows Vista run in Protected Mode by default in the Internet security zone. (Protected Mode is off by default in the Intranet zone.) Protected Mode significantly reduces the ability of an attacker to write, alter, or destroy data on the user’s machine or to install malicious code. This is accomplished by using the integrity mechanisms of Windows Vista which restrict access to processes, files, and registry keys with higher integrity levels.

What is Data Execution Prevention (DEP)?
Data Execution Prevention (DEP) is included in Internet Explorer; disabled by default in Internet Explorer 7, and enabled by default in Internet Explorer 8 Beta 2. DEP is designed to help foil attacks by preventing code from running in memory that is marked non-executable. For more information about DEP in Internet Explorer, please see the following post: http://blogs.msdn.com/ie/archive/2008/04/08/ie8-security-part-I_3A00_-dep-nx-memory-protection.aspx. Recently, proof of concept code was published that demonstrates methods to bypass DEP. However, the workarounds included in this advisory, of setting the security slider to High as well as applying one of the OLEDB32.dll workarounds, are still effective in blocking current attacks.

Suggested Actions

• Protect Your PC

We continue to encourage customers to follow our Protect Your PC guidance of enabling a firewall, getting software updates and installing antivirus software. Customers can learn more about these steps by visiting Protect Your PC Web site.
 
• For more information about staying safe on the Internet, customers should visit Microsoft Security Central.
 
• Customers who believe they have been attacked should contact their local FBI office or post their complaint on the Internet Crime Complaint Center Web site. Customers outside the U.S. should contact the national law enforcement agency in their country.
 
• All customers should apply the most recent security updates released by Microsoft to help ensure that their systems are protected from attempted exploitation. Customers who have enabled Automatic Updates will automatically receive all Windows updates. For more information about security updates, visit Microsoft Security Central.
 
• We recommend that customers exercise extreme caution when they accept file transfers from both known and unknown sources. For more information about how to help protect your computer while you use MSN Messenger, visit MSN Messenger Frequently Asked Questions.
 
• Keep Windows Updated

All Windows users should apply the latest Microsoft security updates to help make sure that their computers are as protected as possible. If you are not sure whether your software is up to date, visit the Windows Update Web site, scan your computer for available updates, and install any high-priority updates that are offered to you. If you have Automatic Updates enabled, the updates are delivered to you when they are released, but you have to make sure you install them.
 
Workarounds

Microsoft has tested the following workarounds. Although these workarounds will not correct the underlying vulnerability, they help block known attack vectors. When a workaround reduces functionality, it is identified in the following section.

 Set Internet and Local intranet security zone settings to "High" to prompt before running ActiveX Controls and Active Scripting in these zones

You can help protect against exploitation of this vulnerability by changing your settings for the Internet security zone to prompt before running ActiveX controls and Active Scripting. You can do this by setting your browser security to High.

To raise the browsing security level in Internet Explorer, follow these steps:

1. On the Internet Explorer Tools menu, click Internet Options.
 
2. In the Internet Options dialog box, click the Security tab, and then click the Internet icon.
 
3. Under Security level for this zone, move the slider to High. This sets the security level for all Web sites you visit to High.
 

Note: If no slider is visible, click Default Level, and then move the slider to High.

Note: Setting the level to High may cause some Web sites to work incorrectly. If you have difficulty using a Web site after you change this setting, and you are sure the site is safe to use, you can add that site to your list of trusted sites. This will allow the site to work correctly even with the security setting set to High.

Impact of workaround. There are side effects to prompting before running ActiveX Controls and Active Scripting. Many Web sites that are on the Internet or on an intranet use ActiveX or Active Scripting to provide additional functionality. For example, an online e-commerce site or banking site may use ActiveX Controls to provide menus, ordering forms, or even account statements. Prompting before running ActiveX Controls or Active Scripting is a global setting that affects all Internet and intranet sites. You will be prompted frequently when you enable this workaround. For each prompt, if you feel you trust the site that you are visiting, click Yes to run ActiveX Controls or Active Scripting. If you do not want to be prompted for all these sites, use the steps outlined in "Add sites that you trust to the Internet Explorer Trusted sites zone".

Add sites that you trust to the Internet Explorer Trusted sites zone

After you set Internet Explorer to require a prompt before it runs ActiveX controls and Active Scripting in the Internet zone and in the Local intranet zone, you can add sites that you trust to the Internet Explorer Trusted sites zone. This will allow you to continue to use trusted Web sites exactly as you do today, while helping to protect you from this attack on untrusted sites. We recommend that you add only sites that you trust to the Trusted sites zone.

To do this, follow these steps:

1. In Internet Explorer, click Tools, click Internet Options, and then click the Security tab.
 
2. In the Select a Web content zone to specify its current security settings box, click Trusted Sites, and then click Sites.
 
3. If you want to add sites that do not require an encrypted channel, click to clear the Require server verification (https:) for all sites in this zone check box.
 
4. In the Add this Web site to the zone box, type the URL of a site that you trust, and then click Add.
 
5. Repeat these steps for each site that you want to add to the zone.
 
6. Click OK two times to accept the changes and return to Internet Explorer.
 

Note Add any sites that you trust not to take malicious action on your system. Two in particular that you may want to add are *.windowsupdate.microsoft.com and *.update.microsoft.com. These are the sites that will host the update, and it requires an ActiveX Control to install the update.

 

Configure Internet Explorer to prompt before running Active Scripting or to disable Active Scripting in the Internet and Local intranet security zone

You can help protect against exploitation of this vulnerability by changing your settings to prompt before running Active Scripting or to disable Active Scripting in the Internet and Local intranet security zone. To do this, follow these steps:

1. In Internet Explorer, click Internet Options on the Tools menu.
 
2. Click the Security tab.
 
3. Click Internet, and then click Custom Level.
 
4. Under Settings, in the Scripting section, under Active Scripting, click Prompt or Disable, and then click OK.
 
5. Click Local intranet, and then click Custom Level.
 
6. Under Settings, in the Scripting section, under Active Scripting, click Prompt or Disable, and then click OK.
 
7. Click OK two times to return to Internet Explorer.
 

Note Disabling Active Scripting in the Internet and Local intranet security zones may cause some Web sites to work incorrectly. If you have difficulty using a Web site after you change this setting, and you are sure the site is safe to use, you can add that site to your list of trusted sites. This will allow the site to work correctly.

Impact of workaround. There are side effects to prompting before running Active Scripting. Many Web sites that are on the Internet or on an intranet use Active Scripting to provide additional functionality. For example, an online e-commerce site or banking site may use Active Scripting to provide menus, ordering forms, or even account statements. Prompting before running Active Scripting is a global setting that affects all Internet and intranet sites. You will be prompted frequently when you enable this workaround. For each prompt, if you feel you trust the site that you are visiting, click Yes to run Active Scripting. If you do not want to be prompted for all these sites, use the steps outlined in "Add sites that you trust to the Internet Explorer Trusted sites zone".

Add sites that you trust to the Internet Explorer Trusted sites zone

After you set Internet Explorer to require a prompt before it runs ActiveX controls and Active Scripting in the Internet zone and in the Local intranet zone, you can add sites that you trust to the Internet Explorer Trusted sites zone. This will allow you to continue to use trusted Web sites exactly as you do today, while helping to protect you from this attack on untrusted sites. We recommend that you add only sites that you trust to the Trusted sites zone.

To do this, follow these steps:

1. In Internet Explorer, click Tools, click Internet Options, and then click the Security tab.
 
2. In the Select a Web content zone to specify its current security settings box, click Trusted Sites, and then click Sites.
 
3. If you want to add sites that do not require an encrypted channel, click to clear the Require server verification (https:) for all sites in this zone check box.
 
4. In the Add this Web site to the zone box, type the URL of a site that you trust, and then click Add.
 
5. Repeat these steps for each site that you want to add to the zone.
 
6. Click OK two times to accept the changes and return to Internet Explorer.
 

Note Add any sites that you trust not to take malicious action on your system. Two in particular that you may want to add are *.windowsupdate.microsoft.com and *.update.microsoft.com. These are the sites that will host the update, and it requires an ActiveX Control to install the update.


Disable XML Island functionality

Use the following registry file to delete the XML Island key:

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}]

Note For Windows Vista and Windows Server 2008 only, take ownership of [HKEY_CLASSES_ROOT\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}] first, as follows:

1. Run Regedit as Admin
 
2. Go to [HKEY_CLASSES_ROOT\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}]
 
3. Click Permission, then Advanced, then Owner
 
4. Change Owner to Administrator
 
5. Click Grant Full Control to Administrator
 
6. Then iterate for all subkeys
 

For other operating systems, no extra action is needed.

Impact of workaround: Embedded XML in HTML may not render correctly.

How to undo the workaround

Use the following registry file:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}]

@="MsxmlIsland"

[HKEY_CLASSES_ROOT\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\InProcServer32]

@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,00,73,00,\
78,00,6d,00,6c,00,33,00,2e,00,64,00,6c,00,6c,00,00,00

"ThreadingModel"="Apartment"

[HKEY_CLASSES_ROOT\CLSID\{379E501F-B231-11D1-ADC1-00805FC752D8}\TypeLib]

@="{D63E0CE2-A0A2-11D0-9C02-00C04FC99C8E}"

Top of section
 Restrict Internet Explorer from using OLEDB32.dll with an Integrity Level ACL

This workaround applies only to Windows Vista and newer operating systems and requires that UAC prompting and Protected Mode be enabled, which are the default settings.

Save the following text to a temporary directory:

For 32-bit systems

Save to a text file called: "BlockAccess_x86.inf"

[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[File Security]
"%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"

For 64-bit systems

Save to a text file called: "BlockAccess_x64.inf"

[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[File Security]
"%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
"%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"

Run the following command from the temporary directory as an Administrator:

SecEdit /configure /db BlockAccess.sdb /cfg <inf file>

After the command completes, you should see the following messages:

The task has completed successfully.
See log %windir%\security\logs\scesrv.log for detail info.

Validating the workaround

To validate that the workaround was successfully applied, run the following commands at a command prompt:

For 32-bit systems

icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"

For 64-bit systems

icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"
icacls "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll"

Each time you run icacls, search through the output for the following line.

Mandatory Label\Medium Mandatory Level:(NW,NR,NX)

Impact of workaround: Any ADO/OLE DB applications running in Internet Explorer, which is not common, will stop functioning. The impact is minimal since all other processes running in Medium or higher integrity level would still be able to load the dll and use it.

How to undo the workaround

Save the following text to a temporary directory:

For 32-bit systems

Save to a text file called: "unBlockAccess_x86.inf"

[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[File Security]
"%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NW;;;ME)"

For 64-bit systems

Save to a text file called: "unBlockAccess_x64.inf"

[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[File Security]
"%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NW;;;ME)"
"%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NW;;;ME)"

Run the following command from the temporary directory as an Administrator:

SecEdit /configure /db UnblockAccess.sdb /cfg <inf file>

After the command completes, you should see the following messages:

The task has completed successfully.
See log %windir%\security\logs\scesrv.log for detail info.

Top of section
 Disable Row Position functionality of OLEDB32.dll

Delete the following registry key:

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}]

Note For Windows Vista and Windows Server 2008 only, take ownership of [HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}] first, as follows:

1. Run Regedit as Admin
 
2. Go to [HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}]
 
3. Click Permission, then Advanced, then Owner
 
4. Change Owner to Administrator
 
5. Click Grant Full Control to Administrator
 
6. Then iterate for all subkeys
 

For other operating systems, no extra action is needed.

Impact of workaround: All ADO applications using the RowPosition property and related information will stop functioning. All OLE DB applications using the OLE DB Row Position Library will stop functioning.

How to undo the workaround

Use the following registry file to restore the Row Position Registry:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}]

@="Microsoft OLE DB Row Position Library"

[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}\InprocServer32]

@="%Program Files%\\Common Files\\System\\Ole DB\\oledb32.dll"

"ThreadingModel"="Both"

[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}\ProgID]

@="RowPosition.RowPosition.1"

[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}\VersionIndependentProgID]

@="RowPosition.RowPosition"

Top of section
 Unregister OLEDB32.DLL

Run the following commands from a command prompt as an administrator:

• For supported versions of Windows 2000, Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008 for 32-bit Systems

Regsvr32.exe /u "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"
 
• For supported versions of Windows XP Professional x64 Edition, Windows Server 2003 x64 Edition, Windows Vista x64 Edition, Windows Server 2008 for x64-based Systems, and Windows Server 2008 for Itanium-based Systems

Regsvr32.exe /u "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"

Regsvr32.exe /u "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll"
 

Impact of workaround: All OLE DB and ADO applications will stop functioning. This includes all ASP/ADO implementations, SQL Server linked services, .Net applications using the System.Data.OLEDB namespace, and some Office functionality that accesses external data.

How to undo the workaround

Run the following commands from a command prompt as an administrator:

• For supported versions of Windows 2000, Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008 for 32-bit Systems

Regsvr32.exe "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"
 
• For supported versions of Windows XP Professional x64 Edition, Windows Server 2003 x64 Edition, Windows Vista x64 Edition, Windows Server 2008 for x64-based Systems, and Windows Server 2008 for Itanium-based Systems

Regsvr32.exe "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"

Regsvr32.exe "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll"
 

Use ACL to disable OLEDB32.DLL

Run the following commands from a command prompt as an administrator:

• For supported versions of Windows 2000, Windows XP, and Windows Server 2003

cacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /E /P everyone:N
 
• For supported versions of Windows XP Professional x64 Edition, Windows Server 2003 x64 Edition, and Windows Server 2003 for Itanium-based Systems

cacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /E /P everyone:N

cacls "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll" /E /P everyone:N
 
• For supported versions of Windows Vista and Windows Server 2008 for 32-bit Systems

takeown /f "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"

icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /save %TEMP%\oledb32.32.dll.TXT

icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /deny everyone:(F)
 
• For supported versions of Windows Vista x64 Edition, Windows Server 2008 for x64-based Systems, and Windows Server 2008 for Itanium-based Systems

takeown /f "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll"

icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /save %TEMP%\oledb32.64.dll.TXT

icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /deny everyone:(F)

takeown /f "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll"

icacls "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll" /save %TEMP%\oledb32.32.dll.TXT

icacls "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll" /deny everyone:(F)
 

Impact of workaround: All OLE DB and ADO applications will stop functioning. This includes all ASP/ADO implementations, SQL Server linked services, .Net applications using the System.Data.OLEDB namespace, and some Office functionality that accesses external data.

How to undo the workaround

Run the following commands from a command prompt as an administrator:

• For supported versions of Windows 2000, Windows XP, and Windows Server 2003

cacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /E /R everyone
 
• For supported versions of Windows XP Professional x64 Edition, Windows Server 2003 x64 Edition, and Windows Server 2003 for Itanium-based Systems

cacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /E /R everyone

cacls "%ProgramFiles(x86)%\Common Files\System\Ole DB\oledb32.dll" /E /R everyone
 
• For supported versions of Windows Vista and Windows Server 2008 for 32-bit Systems:

icacls "%ProgramFiles%\Common Files\System\Ole DB" /restore %TEMP%\oledb32.32.dll.TXT
 
• For supported versions of Windows Vista x64 Edition, Windows Server 2008 for x64-based Systems, and Windows Server 2008 for Itanium-based Systems

icacls "%ProgramFiles%\Common Files\System\Ole DB" /restore %TEMP%\oledb32.32.dll.TXT

icacls "%ProgramFiles(x86)%\Common Files\System\Ole DB" /restore %TEMP%\oledb32.64.dll.TXT
 

Enable DEP for Internet Explorer 7 on Windows Vista and on Windows Server 2008

Local Administrators can control DEP/NX by running Internet Explorer as an Administrator. To enable DEP, perform the following steps:

1. In Internet Explorer, click Tools, click Internet Options, and then click Advanced.
 
2. Click Enable memory protection to help mitigate online attacks.
 

Impact of workaround: Some browser extensions may not be compatible with DEP and may exit unexpectedly. If this occurs, you can disable the add-on, or revert the DEP setting using the Internet Control Panel. This is also accessible using the System Control panel.


 Disable Data Binding support in Internet Explorer 8 Beta 2

Perform the following steps:

1. Set Internet and Local Intranet security zone settings to High.
 
2. Use the following registry file to add the feature control key:
 

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_DATABINDING_SUPPORT]

"iexplore.exe"=dword:00000000

Impact of workaround: This workaround turns off data binding for all security zones. Any accessed Web sites that use data binding will no longer render properly.

How to undo the workaround

Use the following registry file to remove the feature control key:

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_DATABINDING_SUPPORT]

Top of section
Top of section
Top of section
Resources:

• You can provide feedback by completing the form by visiting Microsoft Help and Support: Contact Us.
 
• Customers in the United States and Canada can receive technical support from Microsoft Product Support Services. For more information about available support options, see Microsoft Help and Support.
 
• International customers can receive support from their local Microsoft subsidiaries. For more information about how to contact Microsoft for international support issues, visit International Support.
 
• Microsoft TechNet Security provides additional information about security in Microsoft products.
 


Disclaimer:

The information provided in this advisory is provided "as is" without warranty of any kind. Microsoft disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. In no event shall Microsoft Corporation or its suppliers be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages, even if Microsoft Corporation or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing limitation may not apply.

Revisions:

• December 10, 2008: Advisory published
 
• December 11, 2008: Revised to include Microsoft Internet Explorer 5.01 Service Pack 4, Internet Explorer 6 Service Pack 1, Internet Explorer 6, and Windows Internet Explorer 8 Beta 2 as potentially vulnerable software. Also added more workarounds.
 
• December 12, 2008: Revised to correct operating systems that support Windows Internet Explorer 8 Beta 2. Also added more workarounds and a reference to Microsoft Security Advisory (954462).
 
• December 13, 2008: Revised to add the workaround, Disable XML Island functionality. Also, in a FAQ entry, clarified the list of recommended workarounds and added the blog post URL for recommended workarounds.
 
• December 15, 2008: Updated the workarounds, Disable XML Island functionality and Disable Row Position functionality of OLEDB32.dll. 
 


To receive automatic notifications whenever Microsoft Security Bulletins are issued, subscribe to Microsoft Technical Security Notifications.

Regards,

The IE Support Team