背景】
2020年2月11日,微软发布了自停止支持的win7(2020年1月14日)后涵盖Microsoft Windows、Edge、Internet Explorer(IE)、SQL Server、Office以及Web应用等共计99个漏洞补丁安装程序。
这些99个漏洞当中的CVE-2020-0688是一个Exchange服务上的漏洞。利用这个漏洞,攻击者可通过Exchange服务上的普通用户权限,接管整个Exchange服务器。
该漏洞的POC(攻击演示代码)已被公开。
【漏洞详情】
漏洞发生在 Exchange Control Panel (ECP)组件中。
与每次软件安装都会产生随机密钥不同,所有Microsoft Exchange Server在安装后的web.config文件中都拥有相同的validationKey和decryptionKey。这些密钥用于保证ViewState的安全性。而ViewState是ASP.NET Web应用以序列化格式存储在客户机上的服务端数据。
客户端通过__VIEWSTATE请求参数将这些数据返回给服务器。
由于使用了静态密钥,经过身份验证的攻击者可以欺骗目标服务器反序列化恶意创建的ViewState数据。当攻击者可以登录Exchange邮箱账户时,在YSoSerial.net的帮助下,可以在Exchange Control Panel web应用上执行任意代码。
代码执行结果不会回显,页面显示500意外错误。
【风险评级】高危
【影响版本】
Exchange 2010 SP3、Exchange 2013、Exchange 2016、Exchange 2019等多个版本,具体如下:
【修复建议】
访问https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0688 下载安装Exchange受影响版本对应的补丁。
【参考链接】
https://s.tencent.com/research/bsafe/889.html
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0688
https://www.zerodayinitiative.com/blog/2020/2/24/cve-2020-0688-remote-code-execution-on-microsoft-exchange-server-through-fixed-cryptographic-keys
https://nosec.org/home/detail/4158.html