Microsoft Exchange漏洞攻击日志分析与检测指南
1. 概述
本文档详细分析Microsoft Exchange服务器中三个关键漏洞(CVE-2020-0688、CVE-2020-16875和CVE-2020-17144)的攻击行为,并提供基于日志的检测方法。这些漏洞允许攻击者在特定条件下执行远程代码,威胁Exchange服务器的安全。
2. CVE-2020-0688漏洞分析
2.1 漏洞简介
CVE-2020-0688是一个远程代码执行漏洞,存在于Microsoft Exchange Server中,攻击者需要先通过身份验证才能利用此漏洞。
2.2 检测方法
2.2.1 Windows应用日志检测
虽然部分资料提到可以使用Windows应用日志检测此漏洞,但实际测试中可能不会产生预期日志记录:
title: Monitoring CVE-2020-0688 using Windows application logs
description: windows server 2016
author: DHZN
logsource:
product: windows
service: Application
detection:
selection:
EventID: 4
Message|contains: '__VIEWSTATE'
condition: selection
level: medium
注意:实际模拟攻击时可能不会产生此特征记录,建议仅作为辅助分析参考。
3. CVE-2020-16875漏洞分析
3.1 漏洞简介
由于对cmdlet参数验证不正确,Microsoft Exchange服务器中存在一个远程执行代码漏洞。成功利用此漏洞的攻击者可以在系统用户的上下文中运行任意代码。
利用条件:
- 需要拥有以某个Exchange角色进行身份验证的用户权限
- 需要DLP(数据丢失防护)权限
3.2 环境准备
为测试此漏洞,需要创建具有DLP权限的用户:
New-RoleGroup -Name "dlp users" -Roles "Data Loss Prevention" -Members "user"
Get-RoleGroup "dlp users" | Format-List
3.3 攻击步骤
- 在给定帐户下进行身份验证
- 通过访问DLP策略管理功能获取参数
- 添加新的恶意DLP策略,其中包含从PowerShell运行的可执行命令
3.4 检测方法
3.4.1 IIS日志检测
ECP的访问日志包含成功添加新DLP策略的事件:
2023-11-23 14:29:29 192.168.101.133 POST /ecp/DLPPolicy/ManagePolicyFromISV.aspx &CorrelationID=<empty>;&cafeReqId=10f1f578-5522-4d1f-83be-7aca55c74775; 443 abd.com\user 192.168.101.128 Mozilla/5.0+(Windows+NT+10.0;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko https://192.168.101.133/ecp/DLPPolicy/ManagePolicyFromISV.aspx 200 0 0 18
检测规则:
title: Creating a new DLP policy using IIS log monitoring
description: windows server 2016
author: DHZN
logsource:
product: windows
service: IIS
detection:
selection:
http_method: POST
http_code: 200
url_path|contain: '/ecp/DLPPolicy/ManagePolicyFromISV.aspx'
condition: selection
level: medium
3.4.2 MSExchange管理日志检测
创建新DLP策略的行为会被记录在MSExchange管理日志中,事件的参数中包含恶意载荷(TemplateData):
Cmdlet suceeded. Cmdlet New-DlpPolicy, parameters -Mode "Audit" -State "Enabled" -Name "111" -TemplateData PD94bWwgdmVyc2lvbj0iMS4wIiA=[...].
检测规则:
title: Creating a new DLP policy using powrshell log or MSExchange Management Log monitoring
description: windows server 2016
author: DHZN
logsource:
product: windows
service: MSExchange Management Log
detection:
selection:
EventID: 1
Message|contains|all:
- 'New-DlpPolicy'
- '-TemplateData'
condition: selection
level: medium
3.4.3 Windows安全日志检测
成功利用漏洞后,查看安全日志中的进程启动事件,可以看到由具有系统权限的父进程(w3wp.exe)启动的进程:
title: Monitoring CVE-2020-16875 utilization behavior using Windows security logs
description: windows server 2016
author: DHZN
logsource:
product: windows
service: Security
detection:
selection:
EventID: 4688
proc_parent_file_path|endswith: 'w3wp.exe'
proc_file_path|contains|endswitch:
- 'cmd.exe'
- 'powershell.exe'
condition: selection
level: high
4. CVE-2020-17144漏洞分析
4.1 漏洞简介
Microsoft Exchange在处理内存中的对象时,由于对cmdlet参数的验证不正确,经过身份认证的攻击者可利用此漏洞以system用户权限在目标系统上执行任意代码。
特点:
- 只需要NTHash即可利用
- 利用成功后将直接进行持久化
- 影响Exchange 2010服务器
- 可通过EWS(Exchange Web Services)接口利用
4.2 检测方法
4.2.1 IIS日志检测
攻击过程中可能访问"/ews/Exchange.asmx",但单独这一行为不能作为确定性的检测特征:
2023-11-22 08:25:14 10.211.55.72 POST /ews/Exchange.asmx - 443 - 10.211.55.68 ExchangeServicesClient/2.2.1.0 - 401 0 0 0
2023-11-22 08:25:14 10.211.55.72 POST /ews/Exchange.asmx - 443 AAA\user 10.211.55.68 ExchangeServicesClient/2.2.1.0 - 200 0 0 156
检测规则(仅供参考,需结合上下文分析):
title: Analyzing Exchange Vulnerability Explosions Using IIS Log Monitoring for CVE-2020-17144
description: windows server 2012
author: DHZN
logsource:
product: windows
service: IIS
detection:
selection:
http_method: POST
url_path|contain: '/ews/Exchange.asmx'
condition: selection
level: low
5. 综合分析建议
- 多日志源关联分析:结合IIS日志、Windows安全日志、应用日志和MSExchange管理日志进行综合分析
- 上下文行为分析:单一日志条目可能不足以确定攻击,需要结合多个相关事件进行分析
- 权限变更监控:特别关注新创建的具有特殊权限(如DLP)的用户和组
- 异常进程监控:关注由w3wp.exe启动的cmd.exe或powershell.exe进程
- EWS接口监控:对/ews/Exchange.asmx的频繁访问可能是攻击迹象
6. 总结
本文详细介绍了三种Microsoft Exchange漏洞的攻击特征和检测方法:
- CVE-2020-0688:需结合IIS日志和Windows安全日志检测
- CVE-2020-16875:重点关注DLP策略创建行为和后续进程启动
- CVE-2020-17144:需监控EWS接口访问并结合其他上下文信息
实际安全分析中,应从监测特征发现攻击点,逐步还原攻击者的完整攻击路径。