Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:20131
HistoryJul 09, 2008 - 12:00 a.m.

Microsoft Security Bulletin MS08-040 – Important Vulnerabilities in Microsoft SQL Server Could Allow Elevation of Privilege (941203)

2008-07-0900:00:00
vulners.com
94

Microsoft Security Bulletin MS08-040 – Important
Vulnerabilities in Microsoft SQL Server Could Allow Elevation of Privilege (941203)
Published: July 8, 2008

Version: 1.0
General Information
Executive Summary

This security update resolves four privately disclosed vulnerabilities. The more serious of the vulnerabilities could allow an attacker to run code and to take complete control of an affected system. An authenticated attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

This security update is rated Important for supported releases of SQL Server 7.0, SQL Server 2000, SQL Server 2005, Microsoft Data Engine (MSDE) 1.0, Microsoft SQL Server 2000 Desktop Engine (MSDE 2000), Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2000 Desktop Engine (WMSDE), and Windows Internal Database (WYukon). For more information, see the subsection, Affected and Non-Affected Software, in this section.

The security update addresses the vulnerabilities by modifying the way that SQL Server manages page reuse, allocating more memory for the convert function, validating on-disk files before loading them, and validating insert statements. For more information about the vulnerabilities, see the Frequently Asked Questions (FAQ) subsection for the specific vulnerability entry under the next section, Vulnerability Information.

Recommendation. Microsoft recommends that customers apply the update at the earliest opportunity.

Known Issues. Microsoft Knowledge Base Article 941203 documents the currently known issues that customers may experience when installing this security update. The article also documents recommended solutions for these issues. For more information about installing these updates, see the Frequently Asked Questions (FAQ) Related to This Security Update subsection, in this section.
Top of sectionTop of section
Affected and Non-Affected Software

The following software have been tested to determine which versions or editions are affected. Other versions or editions are either past their support life cycle or are not affected. To determine the support life cycle for your software version or edition, visit Microsoft Support Lifecycle.

Depending on your software version or edition, you may need to choose between GDR and QFE software update links below in order to manually install your update from the Microsoft Download Center. For more information on determining which update to install on your system, see the Frequently Asked Questions (FAQ) Related to This Security Update subsection, in this section.

Affected Software

SQL Server
GDR Software Updates QFE Software Updates Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update

SQL Server 7.0 Service Pack 4
(KB948113)

SQL Server 7.0 Service Pack 4
(KB948113)

Elevation of Privilege

Important

None

SQL Server 2000 Service Pack 4
(KB948110)

SQL Server 2000 Service Pack 4
(KB948111)

Elevation of Privilege

Important

None

SQL Server 2000 Itanium-based Edition Service Pack 4
(KB948110)

SQL Server 2000 Itanium-based Edition Service Pack 4
(KB948111)

Elevation of Privilege

Important

None

SQL Server 2005 Service Pack 2
(KB948109)

SQL Server 2005 Service Pack 2
(KB948108)

Elevation of Privilege

Important

None

SQL Server 2005 x64 Edition Service Pack 2
(KB948109)

SQL Server 2005 x64 Edition Service Pack 2
(KB948108)

Elevation of Privilege

Important

None

SQL Server 2005 with SP2 for Itanium-based Systems
(KB948109)

SQL Server 2005 with SP2 for Itanium-based Systems
(KB948108)

Elevation of Privilege

Important

None

Microsoft Data Engine (MSDE) 1.0 Service Pack 4
(KB948113)

Microsoft Data Engine (MSDE) 1.0 Service Pack 4
(KB948113)

Elevation of Privilege

Important

None

Microsoft SQL Server 2000 Desktop Engine (MSDE 2000) Service Pack 4
(KB948110)

Microsoft SQL Server 2000 Desktop Engine (MSDE 2000) Service Pack 4
(KB948111)

Elevation of Privilege

Important

None

Microsoft SQL Server 2005 Express Edition Service Pack 2
(KB948109)

Microsoft SQL Server 2005 Express Edition Service Pack 2
(KB948108)

Elevation of Privilege

Important

None

Microsoft SQL Server 2005 Express Edition with Advanced Services Service Pack 2
(KB948109)

Microsoft SQL Server 2005 Express Edition with Advanced Services Service Pack 2
(KB948108)

Elevation of Privilege

Important

None

Windows Components
Operating System Component Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update

Microsoft Windows 2000 Service Pack 4

Microsoft SQL Server 2000 Desktop Engine (WMSDE)
(KB948110)

Elevation of Privilege

Important

None

Windows Server 2003 Service Pack 1 and Windows Server 2003 Service Pack 2

Microsoft SQL Server 2000 Desktop Engine (WMSDE)
(KB948110)

Elevation of Privilege

Important

None

Windows Server 2003 Service Pack 1 and Windows Server 2003 Service Pack 2

Windows Internal Database (WYukon) Service Pack 2
(KB948109)

Elevation of Privilege

Important

None

Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2

Microsoft SQL Server 2000 Desktop Engine (WMSDE)
(KB948110)

Elevation of Privilege

Important

None

Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2

Windows Internal Database (WYukon) x64 Edition Service Pack 2
(KB948109)

Elevation of Privilege

Important

None

Windows Server 2008 for 32-bit Systems*

Windows Internal Database (WYukon) Service Pack 2
(KB948109)

Elevation of Privilege

Important

None

Windows Server 2008 for x64-based Systems*

Windows Internal Database (WYukon) x64 Edition Service Pack 2
(KB948109)

Elevation of Privilege

Important

None

*Windows Server 2008 server core installation affected. For supported editions of Windows Server 2008, this update applies, with the same severity rating, whether or not Windows Server 2008 was installed using the Server Core installation option. For more information on this installation option, see Server Core. Note that the Server Core installation option does not apply to certain editions of Windows Server 2008; see Compare Server Core Installation Options.
Top of sectionTop of section

Frequently Asked Questions (FAQ) Related to This Security Update

There are both GDR and QFE updates offered for my version of SQL. How do I know which update to use?
First, determine your SQL Server version number. For more information on determining your SQL Server version number, see Microsoft Knowledge Base Article 321185.

Second, in the table below, locate the version range that your SQL Server version number falls within. The corresponding update is the update you need to install.

Note If your SQL Server version number does not fall within any of the ranges in the table below, your SQL Server version is no longer supported. Please upgrade to the latest Service Pack or SQL Server product in order to apply this and future security updates.
SQL Server Version Range

7.00.1063-7.00.1151

8.00.2039-8.00.2049

8.00.2148-8.00.2272

9.00.3042-9.00.3067

9.00.3150-9.00.3230
SQL Server

SQL Server 7.0 and MSDE 1.0
(KB948113)

SQL Server 2000 GDR and MSDE 2000
(KB948110)

SQL Server 2000 QFE and MSDE 2000
(KB948111)

SQL Server 2005 GDR
(KB948109)

SQL Server 2005 QFE
(KB948108)

For additional installation instructions, see the Security Update Information subsection for your SQL Server edition in the Update Information section.

Why is the QFE Software Update KB948108 not offered to my SQL Server 2005 Service Pack 2 system?
As detailed in Microsoft Knowledge Base Article 935897, hotfixes for SQL Server 2005 are cumulative. Typically, hotfixes have a shorter testing window than General Distribution Releases (GDR). Customers who have installed either the April Cumulative update package 7 for SQL Server 2005 Service Pack 2 or the June Cumulative update package 8 for SQL Server 2005 Service Pack 2 will not be offered QFE Software Update KB948108, because the security updates available via QFE Software Update KB948108 were already included in both the April and the June cumulative updates. This update still applies for all customers who have not applied either the April or the June cumulative update for SQL Server 2005 Service Pack 2.

The reference tables for SQL Server 2000 and MSDE 2000 in the Security Update Information section show that some updates may require a restart. How can I tell if my update will require a restart?
For SQL Server 2000 and MSDE 2000, it is possible to have dependent services. Dependent services are not restarted after the service they are dependent on is stopped and restarted. For this reason, a restart should be performed after a successful install to ensure that dependent services are started. For more information on determining whether you are running dependent services, see Microsoft Knowledge Base Article 953741.

Will the updates be applied to disabled instances of SQL Server 2000, MSDE 2000, and SQL Server 2005?
No. Only those instances of SQL Server 2000, MSDE 2000, and SQL Server 2005 that do not have a Startup type of disabled will be updated by the installer. For more information on disabled services, see Microsoft Knowledge Base Article 953740.

Does the update for SQL Server 7.0 Service Pack 4 and Microsoft Data Engine (MSDE) 1.0 Service Pack 4 require manual installation?
Yes. You will need to manually install the update following the readme instructions in the self-extracting executable file that is provided with the update. For more information on manually installing SQL Server 7.0 Service Pack 4 and Microsoft Data Engine (MSDE) 1.0 Service Pack 4, see Microsoft Knowledge Base Article 953743. For additional installation instructions, see the Security Update Information subsection for SQL Server 7.0 and Microsoft Data Engine (MSDE) in the Update Information section.

I am using an older version of the software discussed in this security bulletin. What should I do?
The affected software listed in this bulletin have been tested to determine which versions or editions are affected. Other versions or editions are past their support life cycle. To determine the support life cycle for your software version or edition, visit Microsoft Support Lifecycle.

It should be a priority for customers who have older versions or editions of the software to migrate to supported versions or editions to prevent potential exposure to vulnerabilities. For more information about the Windows Product Lifecycle, visit Microsoft Support Lifecycle. For more information about the extended security update support period for these software versions or editions, visit Microsoft Product Support Services.

Customers who require custom support for older software must contact their Microsoft account team representative, their Technical Account Manager, or the appropriate Microsoft partner representative for custom support options. Customers without an Alliance, Premier, or Authorized Contract can contact their local Microsoft sales office. For contact information, visit Microsoft Worldwide Information, select the country, and then click Go to see a list of telephone numbers. When you call, ask to speak with the local Premier Support sales manager. For more information, see the Windows Operating System Product Support Lifecycle FAQ.
Top of sectionTop of section
Vulnerability Information

Severity Ratings and Vulnerability Identifiers
Vulnerability Severity Rating and Maximum Security Impact by Affected Software
Affected Software Memory Page Reuse Vulnerability – CVE-2008-0085 Convert Buffer Overrun Vulnerability – CVE-2008-0086 SQL Server Memory Corruption Vulnerability – CVE-2008-0107 SQL Server Buffer Overrun Vulnerability – CVE-2008-0106 Aggregate Severity Rating
SQL Server

SQL Server 7.0 Service Pack 4

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Not Applicable

Important

SQL Server 2000 Service Pack 4

Important
Information Disclosure

Important
Elevation of Privilege

Important
Elevation of Privilege

Not Applicable

Important

SQL Server 2000 Itanium-based Edition Service Pack 4

Important
Information Disclosure

Important
Elevation of Privilege

Important
Elevation of Privilege

Not Applicable

Important

SQL Server 2005 Service Pack 1 and SQL Server 2005 Service Pack 2

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Important
Elevation of Privilege

Important

SQL Server 2005 x64 Edition Service Pack 1 and SQL Server 2005 x64 Edition Service Pack 2

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Important
Elevation of Privilege

Important

SQL Server 2005 with SP1 for Itanium-based Systems and SQL Server 2005 with SP2 for Itanium-based Systems

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Important
Elevation of Privilege

Important

Microsoft Data Engine (MSDE) 1.0 Service Pack 4

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Not Applicable

Important

Microsoft SQL Server 2000 Desktop Engine (MSDE 2000) Service Pack 4

Important
Information Disclosure

Important
Elevation of Privilege

Important
Elevation of Privilege

Not Applicable

Important

Microsoft SQL Server 2005 Express Edition Service Pack 1 and Microsoft SQL Server 2005 Express Edition Service Pack 2

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Important
Elevation of Privilege

Important

Microsoft SQL Server 2005 Express Edition with Advanced Services Service Pack 1 and Microsoft SQL Server 2005 Express Edition with Advanced Services Service Pack 2

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Important
Elevation of Privilege

Important
Windows Components

Microsoft SQL Server 2000 Desktop Engine (WMSDE)

Important
Information Disclosure

Important
Elevation of Privilege

Important
Elevation of Privilege

Not Applicable

Important

Windows Internal Database (WYukon) Service Pack 2

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Not Applicable

Important

Windows Internal Database (WYukon) x64 Edition Service Pack 2

Important
Information Disclosure

Not Applicable

Important
Elevation of Privilege

Not Applicable

Important
Top of sectionTop of section

Memory Page Reuse Vulnerability - CVE-2008-0085

An information disclosure vulnerability exists in the way that SQL Server manages memory page reuse. An attacker with database operator access who successfully exploited this vulnerability could access customer data.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2008-0085.

Mitigating Factors for Memory Page Reuse Vulnerability Information Disclosure - CVE-2008-0085

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

This vulnerability requires that an attacker have database operator access to the database, log, database backup files, or log backup files.
Top of sectionTop of section

Workarounds for Memory Page Reuse Vulnerability Information Disclosure - CVE-2008-0085

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Enable Common Criteria Compliance on SQL 2005 Service Pack 2

To enable Common Criteria Compliance, execute the following script while connected to the SQL Server as an administrator. After running the script, restart SQL Server.

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'common criteria compliance enabled', 1;
GO
RECONFIGURE
GO

Impact of workaround. Enabling the Common Criteria Compliance option results in a slight performance degradation.

How to undo the workaround. To disable Common Criteria Compliance, execute the following script while connected to the SQL Server as an administrator. After running the script, restart SQL Server.

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'common criteria compliance enabled', 0;
GO
RECONFIGURE
GO

Top of sectionTop of section

FAQ for Memory Page Reuse Vulnerability Information Disclosure - CVE-2008-0085

What is the scope of the vulnerability?
An information disclosure vulnerability exists in the way that SQL Server manages memory page reuse. An attacker with database operator access who successfully exploited this vulnerability could access customer data that the attacker would otherwise be prohibited from viewing.

What causes the vulnerability?
The vulnerability exists in the way that SQL Server manages memory page reuse. When reallocating memory, SQL Server fails to initialize memory pages.

What might an attacker use the vulnerability to do?
An attacker could read the contents of memory pages that contained data from another user’s session.

How could an attacker exploit the vulnerability?
An attacker with database operator access could assemble the uninitialized memory pages from another user’s session by directing a backup to a location that the attacker controls.

What systems are primarily at risk from the vulnerability?
Systems where SQL Server is used by untrusted parties are primarily at risk.

What does the update do?
The update removes the vulnerability by modifying the way that SQL Server manages page reuse.

How do I clean residual data from my databases?
The following new system stored procedure is provided to physically clean residual data from the free space area of database pages in environments where the physical security of the data or backup files is at risk:

sp_clean_db_free_space

This stored procedure removes residual information left on database pages as a result of data modification routines in SQL Server. This procedure will clean all pages in all files of the database.

sp_clean_db_free_space
@dbname = 'database_name',
[ @cleaning_delay = 'delay_in_seconds' ]

Arguments

@dbname = 'database_name',

The name of the database to clean. dbname is nvarchar(384) and cannot be NULL.

[ @cleaning_delay = 'delay_in_seconds' ]

To reduce the impact on the IO system, a delay can be specified between the cleaning of pages. cleaning_delay is int with a default of 0.

The following example cleans all residual information from the AdventureWorks database.

USE Master
GO
EXEC sp_clean_db_free_space
@dbname = 'AdventureWorks';

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure. Microsoft had not received any information to indicate that this vulnerability had been publicly disclosed when this security bulletin was originally issued. This security bulletin addresses the privately disclosed vulnerability as well as additional issues discovered through internal investigations.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

Convert Buffer Overrun - CVE-2008-0086

A vulnerability exists in the convert function in SQL Server that could allow an authenticated attacker to gain elevation of privilege. An attacker who successfully exploited this vulnerability could run code and take complete control of the system.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2008-0086.

Mitigating Factors for Convert Buffer Overrun - CVE-2008-0086

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state that could reduce the severity of exploitation of vulnerability. The following mitigating factors may be helpful in your situation:

An attacker must have valid SQL or Windows logon credentials in order to exploit this vulnerability.
Top of sectionTop of section

Workarounds for Convert Buffer Overrun - CVE-2008-0086

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Microsoft has not identified any workarounds for this vulnerability.
Top of sectionTop of section

FAQ for Convert Buffer Overrun - CVE-2008-0086

What is the scope of the vulnerability?
An elevation of privilege vulnerability exists in the way that SQL Server converts SQL expressions from one data type to another. This vulnerability could allow an attacker to run code and take complete control of the system. An authenticated attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

What causes the vulnerability?
The convert function in SQL Server insufficiently checks input strings. As a result, a buffer overrun could result, allowing an authenticated attacker to execute code of the attacker’s choice.

What might an attacker use the vulnerability to do?
An authenticated attacker who successfully exploited this vulnerability could gain elevation of privilege on an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

How could an attacker exploit the vulnerability?
An authenticated attacker could create a query that calls the convert function with a specially crafted expression, causing the function to overflow, allowing code execution.

What systems are primarily at risk from the vulnerability?
Systems where SQL Server 2000 Service Pack 4 and Microsoft SQL Server 2000 Desktop Engine (WMSDE) is used are primarily at risk.

What does the update do?
The update removes the vulnerability by allocating more memory for the convert function.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure. Microsoft had not received any information to indicate that this vulnerability had been publicly disclosed when this security bulletin was originally issued. This security bulletin addresses the privately disclosed vulnerability as well as additional issues discovered through internal investigations.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

SQL Server Memory Corruption Vulnerability - CVE-2008-0107

A vulnerability exists in SQL Server that could allow an authenticated attacker to gain elevation of privilege. An attacker who successfully exploited this vulnerability could run code and take complete control of the system.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2008-0107.

Mitigating Factors for SQL Server Memory Corruption Vulnerability - CVE-2008-0107

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker must have valid SQL or Windows logon credentials in order to exploit this vulnerability.
Top of sectionTop of section

Workarounds for SQL Server Memory Corruption Vulnerability - CVE-2008-0107

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Microsoft has not identified any workarounds for this vulnerability.
Top of sectionTop of section

FAQ for SQL Server Memory Corruption Vulnerability - CVE-2008-0107

What is the scope of the vulnerability?
An elevation of privilege vulnerability exists in the way that SQL Server validates data structures in on-disk files. This vulnerability could allow an authenticated attacker to run code and to take complete control of the system. An attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

What causes the vulnerability?
SQL Server fails to sufficiently validate data structures in on-disk files. As a result, a buffer overrun could result and allow an authenticated attacker to execute code of the attacker’s choice.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain elevation of privilege on an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

How could an attacker exploit the vulnerability?
An authenticated attacker could force SQL Server to load a specially crafted file which could cause a buffer overrun, thus corrupting memory in such a way as to allow code execution.

What systems are primarily at risk from the vulnerability?
All systems where SQL Server is used are at risk from exploitation of this vulnerability.

What does the update do?
The update removes the vulnerability by validating on-disk files before loading.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure. Microsoft had not received any information to indicate that this vulnerability had been publicly disclosed when this security bulletin was originally issued. This security bulletin addresses the privately disclosed vulnerability as well as additional issues discovered through internal investigations.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

SQL Server Buffer Overrun Vulnerability - CVE-2008-0106

A vulnerability exists in SQL Server that could allow an authenticated attacker to gain elevation of privilege. An attacker who successfully exploited this vulnerability could run code and take complete control of the system.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2008-0106.

Mitigating Factors for SQL Server Buffer Overrun Vulnerability - CVE-2008-0106

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker must have valid SQL or Windows logon credentials in order to exploit this vulnerability.

By default, SQL Server 2005 does not run with system privileges.

By default, SQL Server 2005 prompts the administrator to choose a domain user account during the install. If the installer configured SQL Server 2005 to run as a non-privileged domain account, this domain account could be less impacted by attempts to exploit this vulnerability.
Top of sectionTop of section

Workarounds for SQL Server Buffer Overrun Vulnerability - CVE-2008-0106

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Microsoft has not identified any workarounds for this vulnerability.
Top of sectionTop of section

FAQ for SQL Server Buffer Overrun Vulnerability - CVE-2008-0106

What is the scope of the vulnerability?
An elevation of privilege vulnerability results from the way that SQL Server manages memory in processing the insert statement. This vulnerability could allow an authenticated attacker to run code and take complete control of the system. An attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

What causes the vulnerability?
SQL Server insufficiently checks insert statements before processing them. As a result, a buffer overrun could result and allow an authenticated attacker to execute code of the attacker’s choice.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain elevation of privilege on an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.

How could an attacker exploit the vulnerability?
An authenticated attacker could create insert statements that cause a buffer overrun, thus corrupting memory in such a way as to allow code execution.

What systems are primarily at risk from the vulnerability?
Systems where SQL Server 2005 is used are primarily at risk.

What does the update do?
The update removes the vulnerability by validating insert statements.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure. Microsoft had not received any information to indicate that this vulnerability had been publicly disclosed when this security bulletin was originally issued. This security bulletin addresses the privately disclosed vulnerability as well as additional issues discovered through internal investigations.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.

Other Information
Acknowledgments

Microsoft thanks the following for working with us to help protect customers:

An anonymous finder for reporting the Memory Page Reuse Vulnerability (CVE-2008-0085).

An anonymous finder for reporting the Convert Buffer Overrun Vulnerability (CVE-2008-0086).

Brett Moore of Insomnia Security working with the iDefense VCP for reporting the SQL Server Memory Corruption Vulnerability (CVE-2008-0107).

An anonymous finder for reporting the SQL Server Buffer Overrun Vulnerability (CVE-2008-0106).

Support

Customers in the U.S. and Canada can receive technical support from Microsoft Product Support Services at 1-866-PCSAFETY. There is no charge for support calls that are associated with security updates.

International customers can receive support from their local Microsoft subsidiaries. There is no charge for support that is associated with security updates. For more information about how to contact Microsoft for support issues, visit the International Support Web site.

Disclaimer

The information provided in the Microsoft Knowledge Base 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

V1.0 (July 8, 2008): Bulletin published.

Related for SECURITYVULNS:DOC:20131