近日,Microsoft Exchange Server被发现存在远程代码执行漏洞,Microsoft Exchange Server 是微软出品的非常流行的邮件服务端程序。该漏洞的 CVE 编号为CVE-2018-8302。该漏洞需要一定的前提条件才可以利用,微软官方将此漏洞的可利用度描述为 “exploitation less likely” (不太可能被利用)。
漏洞描述
2018-8-14日,微软官方 SRC 发布了CVE-2018-8302 漏洞预警,同日ZDI公布了该漏洞的大致利用细节。该漏洞本质为 .NET反序列化漏洞,漏洞被成功利用后,可导致攻击者获得 Exchange 服务器的 System 权限,可导致严重后果。
影响范围
官方提供的受影响的版本如下:
Microsoft Exchange Server 2010 Service Pack 3 Update Rollup 23
Microsoft Exchange Server 2013 Cumulative Update 20
Microsoft Exchange Server 2013 Cumulative Update 21
Microsoft Exchange Server 2016 Cumulative Update 10
Microsoft Exchange Server 2016 Cumulative Update 9
根据 ZDI 披露的漏洞利用过程,大致总结如下:
需要 exchange 启用一个默认没有启用的 Unified Messaging 特性。
攻击者需要控制一个开启了 UM voice mailbox 的邮箱账号。
攻击者利用这个账号,利用 exchange webservice 将反序列化的 payload 写入到 TopNWords.Data 属性中。
攻击者向这个账号发送一封 voice mail,当 exchange 服务器收到这封 voice mail 的时候,会尝试将其转换成为文字。
在转换成文字的过程中,会读取 TopNWords.Data 并进行反序列化,导致漏洞触发。