Microsoft ODBC Driver for SQL Server Remote Code Execution Vulnerability
Released: Feb 14, 2023
- Assigning CNA
- Microsoft
- CVE.org link
- CVE-2023-21704
- Impact
- Remote Code Execution
- Max Severity
- Important
- Weakness
- CVSS Source
- Microsoft
- Vector String
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C
- Metrics
- CVSS:3.1 7.8 / 6.8Base score metrics: 7.8 / Temporal score metrics: 6.8
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Exploit Code Maturity
Unproven
Remediation Level
Official Fix
Report Confidence
Confirmed
Please see Common Vulnerability Scoring System for more information on the definition of these metrics.
Exploitability
The following table provides an exploitability assessment for this vulnerability at the time of original publication.
- Publicly disclosed
- No
- Exploited
- No
- Exploitability assessment
- Exploitation Less Likely
FAQ
According to the CVSS metric, the attack vector is local (AV:L). Why does the CVE title indicate that this is a remote code execution?
The word Remote in the title refers to the location of the attacker. This type of exploit is sometimes referred to as Arbitrary Code Execution (ACE). The attack itself is carried out locally. This means an attacker or victim needs to execute code from the local machine to exploit the vulnerability.
There are GDR and/or CU (Cumulative Update) updates offered for my version of SQL Server. 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 - How to determine the version, edition, and update level of SQL Server and its components.
- Second, in the table below, locate your version number or the version range that your version number falls within. The corresponding update is the one you need to install.
Note If your SQL Server version number is not represented 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.
Update number | Title | Apply if current product version is… | This security update also includes servicing releases up through… |
---|---|---|---|
5021522 | Security update for SQL Server 2022 RTM+GDR (Feb 2023) | 16.0.1000.6 | N/A |
5021124 | Security update for SQL Server 2019 CU18+GDR (Feb 2023) | 15.0.4003.23 - 15.0.4261.1 | KB 5017593 – SQL2019 RTM CU18 |
5021125 | Security update for SQL Server 2019 RTM+GDR (Feb 2023) | 15.0.2000.5 - 15.0.2095.3 | KB 5014356 - Previous SQL2019 RTM GDR |
5021126 | Security update for SQL Server 2017 CU31+GDR (Feb 2023) | 14.0.3006.16 - 14.0.3456.2 | KB 5016884 – SQL2017 RTM CU31 |
5021127 | Security update for SQL Server 2017 RTM+GDR (Feb 2023) | 14.0.1000.169 - 14.0.2042.3 | KB 5014354 - Previous SQL2017 RTM GDR |
5021128 | Security update for SQL Server 2016 SP3 Azure Connect Feature Pack+GDR (Feb 2023) | 13.0.7000.253 - 13.0.7016.1 | KB 5015371 - Previous Azure Connect Feature Pack GDR |
5021129 | Security update for SQL Server 2016 SP3+GDR (Feb 2023) | 13.0.6300.2 - 13.0.6419.1 | KB 5014355 - Previous SQL2016 SP3 GDR |
5021045 | Security update for SQL Server 2014 SP3 CU4+GDR (Feb 2023) | 12.0.6205.1 - 12.0.6439.10 | KB 5014164 – SQL2014 SP3 CU4 |
5021037 | Security update for SQL Server 2014 SP3+GDR (Feb 2023) | 12.0.6024.0 - 12.0.6169.19 | KB 5014165 - Previous SQL2014 SP3 GDR |
5021123 | Security update for SQL Server 2012 SP4+GDR (Feb2023) | 11.0.7001.0 - 11.0.7507.2 | KB 4583465 - Previous SQL2012 SP4 GDR |
5021112 | Security update for SQL Server SQL2008R2 SP3+GDR (Feb2023) | 10.50.6000.34 - 10.50.6560.0 | KB 4057113 - Previous SQL2008R2 SP3 GDR |
5020863 | Security update for SQL Server 2008 SP4+GDR (Feb2023) | 10.00.6000.29 - 10.00.6556.0 | KB 4057114 - Previous SQL2008 SP4 GDR |
What are the GDR and CU update designations and how do they differ?
The General Distribution Release (GDR) and Cumulative Update (CU) designations correspond to the two different servicing options in place for SQL Server baseline releases. A baseline can be either an RTM release or a Service Pack release.
- GDR updates – cumulatively only contain security updates for the given baseline.
- CU updates – cumulatively contain all functional fixes and security updates for the given baseline.
For any given baseline, either the GDR or CU updates could be options (see below).
- If SQL Server installation is at a baseline version, you can choose either the GDR or CU update.
- If SQL Server installation has intentionally only installed past GDR updates, then choose to install the GDR update package.
- If SQL Server installation has intentionally installed previous CU updates, then chose to install the CU security update package.
Note: You are allowed to make a change from GDR updates to CU updates ONE TIME. Once a SQL Server CU update is applied to a SQL Server installation, there is NO way to go back to the GDR update path.
Can the security updates be applied to SQL Server instances on Windows Azure (IaaS)?
Yes. SQL Server instances on Windows Azure (IaaS) can be offered the security updates through Microsoft Update, or customers can download the security updates from Microsoft Download Center and apply them manually.
How could an attacker exploit this vulnerability?
An attacker could exploit the vulnerability by tricking an un-authenticated user into attempting to connect to a malicious SQL server database via ODBC. This could result in the database returning malicious data that might cause arbitrary code execution on the client.
Acknowledgements
- hexb1n
Security Updates
To determine the support lifecycle for your software, see the Microsoft Support Lifecycle.
- 16.0.1050.5
- 14.0.3460.9
- 15.0.4280.7
- 13.0.7024.30
- 13.0.6430.49
- 12.0.6174.8
- 15.0.2101.7
- 12.0.6174.8
- 12.0.6444.4
- 12.0.6444.4
- 14.0.2047.8
Disclaimer
Revisions
Information published.