2020年2月11日,微软2月补丁中,修复了漏洞CVE-2020-0618,360灵腾安全实验室判断漏洞利用难度高,威胁程度中,影响范围相对较广且POC已公开。建议使用漏洞范围内的SQL Server用户注意安装最新补丁,防止黑客攻击。
0x00 漏洞概述
在微软的2020年2月补丁中包含一个漏洞CVE-2020-0618,此漏洞影响Windows SQL Server全版本的Reporting Services,攻击者在获得任意可登陆Reporting Services用户密码的情况下,可以利用.net反序列化漏洞执行任意代码。
0x01 漏洞详情
出现漏洞的服务为Reporting Services,此服务默认情况下并不安装,需要用户安装时手动安装。
漏洞出现在ReportingServicesWebServer.dll中,此文件位于SQL Server安装目录下Reporting ServicesReportServerbin
,出现问题的函数是Microsoft.Reporting.WebForms.BrowserNavigationCorrector
中的OnLoad方法。
可以看到此处使用LosFormatter类直接将value进行反序列化处理产生的漏洞,
紧接着寻找到这个类的实例化并且调用的位置在Microsoft.ReportingServices.WebServer.ReportViewerPage
中的OnInit方法
通过此处可以定位到路由为ReportServer/pages/ReportViewer.aspx
根据代码判断所需要的所有参数,构造POC测试
0x02 影响版本
微软发布的补丁修复版本为SQL Server 2012-2016
实际测试 SQL Server 2008也受影响,并且没有对应补丁。
0x03 处置建议
1.使用SQL Server 2012-2016的用户请尽快安装相关补丁
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0618
2.使用SQL Server 2008的用户请为数据库设置强口令,或者将Reporting Services监听ip改为本地。暂时禁用外部连接,保证此服务安全。
0x04 关于我们
灵腾安全实验室(REDTEAM)正式成立于2020年,隶属于360政企-实网威胁感知部;主攻研究方向包括红队技术、物理攻防、安全狩猎等前瞻技术,为 360AISA全流量威胁分析系统、360天相资产威胁与漏洞管理系统、360虎安服务器安全管理系统、360蜃景攻击欺骗防御系统 核心产品提供安全赋能。
0x05 Reference
https://www.mdsec.co.uk/2020/02/cve-2020-0618-rce-in-sql-server-reporting-services-ssrs/