Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

CVE-2020-0618: Proof of Concept for Microsoft SQL Server Reporting Services Vulnerability Available



Availability of proof-of-concept (PoC) code for recently disclosed remote code execution flaw in Microsoft SQL Server Reporting Services leaves sites vulnerable to attack.

背景

On February 11, Microsoft patched a remote code execution vulnerability in Microsoft SQL Server Reporting Services (SSRS), which provides “a set of on-premises tools and services that create, deploy, and manage mobile and paginated reports.” The issue was reported to Microsoft by Soroush Dalili, principal security consultant at MDSec.

分析

CVE-2020-0618 is an improper input validation vulnerability in the ReportingServicesWebServer.dll of SSRS. According to a blog post from Dalili, the OnLoad method of the Microsoft.Reporting.WebForms.BrowserNavigationCorrector class passes untrusted user input (e.g. a serialized payload passed via the NavigationCorrector$ViewState parameter) to the LosFormatter class to be deserialized.

In his research, Dalili observed the Microsoft.Reporting.WebForms.BrowserNavigationCorrector class was used by the Microsoft.ReportingServices.WebServer.ReportViewerPage class.

To exploit the flaw, Dalili targeted the ReportViewer.aspx file on a SharePoint server. By sending a specially crafted POST request containing a serialized payload generated using ysoserial.net, Dalili could trigger the exploit, obtaining a shell on the vulnerable server.

Microsoft SSRS needs to be installed before an attacker can exploit the flaw. However, we’re seeing reports from security researchers who are searching for vulnerable instances.

Penetration tester Damian Schwyrz recently identified and reported the flaw “on a server of a very large car company.”

Additionally, Dalili shared a Google search query that shows over 8,900 publicly accessible instances of ReportViewer.aspx, many of which appear to be government-related.

It is unclear how many of the sites found in this Google search are actually vulnerable to the flaw. However, the uncertainty won’t prohibit attackers from attempting to identify vulnerable sites and exploit the flaw in the wild.

概念验证

As mentioned above, Dalili published a PoC for the vulnerability in a blog post on February 14. A GitHub repository featuring Dalili’s PoC was published the same day. At the time this blog post was published, there were no full-fledged exploit scripts available for this vulnerability.

解决方案

Microsoft patched this flaw on February 11 as part of Patch Tuesday. According to their advisory, the vulnerability affects Microsoft SQL Server 2012, 2014 and 2016. However, additional reporting from security researcher Kevin Beaumont confirmed this flaw also affects Microsoft SQL Server 2008. The reason 2008 is not listed in the advisory is because it reached its end-of-support cycle in July 2014.

Microsoft has provided General Distribution Release (GDR) and a Cumulative Update (CU) for the affected SQL Server versions. According to Microsoft, GDR updates “only contain security updates for the given baseline” while CUs “contain all functional fixes and security updates for the given baseline.”

Please refer to the table below for the applicable update of your SQL Server based on your current version.

Article 职称 类型 Applicable Versions Included Servicing Release
4532097 Security update for SQL Server 2016 Service Pack 2 GDR 13.0.5026.0—13.0.5101.9 KB4505220
4535706 Security update for SQL Server 2016 Service Pack 2 CU 13.0.5149.0—13.0.5598.27 KB4527378
4532095 Security update for SQL Server 2014 Service Pack 3 GDR 12.0.6024.0—12.0.6108.1 KB4505218
4535288 Security update for SQL Server 2014 Service Pack 2 CU 12.0.6205.1—12.0.6329.1 KB4500181
4532098 Security update for SQL Server 2012 Service Pack 4 GDR 111.0.7001.0—11.0.7462.6 KB4057116

识别受影响的系统

A list of Tenable plugins to identify this vulnerability can be found here. This includes an uncredentialed check (plugin ID 133718), which requires enabling paranoid mode.

获取更多信息

加入 Tenable Community 中的 Tenable 安全响应团队

了解有关 Tenable 这款首创 Cyber Exposure 平台的更多信息,全面管理现代攻击面。

获取 30 天免费试用版 Tenable.io Vulnerability Management


您可加以利用的网络安全新闻

输入您的电子邮件,绝不要错过 Tenable 专家的及时提醒和安全指导。