早在11月23日,科学研究工作人员就收到了一位合作方传出的有关德国Gootkit攻击发作的报警。 Gootkit是一个功能齐全的金融机构木马病毒,自2014年起就存有了,而且具备很多作用,例如致力于盗取与会计有关的信息内容的功能键或短视频纪录。
在近期的活動中,攻击者根据应用鱼饵社区论坛模板来哄骗客户下载故意文档,进而借助遭受攻击的站点对使用者开展社交媒体工程项目。
在研究繁杂的恶意程序载入程序流程时,科学研究工作人员找到一个让人吃惊的发觉。受害者会接到Gootkit自身,或是在某种状况下能接到REvil(Sodinokibi)勒索病毒。在对违法犯罪基础设施建设开展查验以后,决策是不是给予一个有效载荷。
在德国观查到的Gootkit攻击样版
安全性科研工作人员TheAnalyst于11月初次公布应用比较复杂的载入程序流程公布鉴别一个活跃性的Gootkit攻击样版,该载入程序流程最后将背后的主使者偏向了Gootkit,先前Gootkit早已平静了很长一段时间了。德国的电子计算机应急回应工作组DFN-CERT之后确认,遭受攻击的网址已变成本次攻击的总体目标。
大概在同一时间,科学研究工作人员逐渐从一些合作方以及ISP接到相关Gootkit有关总流量的汇报。科学研究工作人员可以在监测范畴内确定全部坐落于德国的Gootkit检验。
德国的Gootkit攻击状况
几日后,科学研究工作人员修补了600几台遭受毁坏的电子计算机。
网址上的虚报社区论坛模板
原始载入程序流程根据被网络黑客攻击的网址散播,应用一种有意思的搜索引擎提升(SEO)技术性订制虚报模板,尝试蒙骗客户下载文档。
该模板效仿一个社区论坛主题,在该主题中,客户以德语了解相关特殊主题的协助,并接到一个回答,该答案好像恰好是她们所找寻的。特别注意的是,代管此模板的被黑网站并不是德语(仅有模板);他们仅仅非常容易遭受攻击,并被作为攻击基础设施建设的一部分。
受攻击网址会载入鱼饵模板来蒙骗受害者
假如恰当的受害者访问了受攻击的网址,则攻击者会出现标准地实例化此虚报的社区论坛贴子。脚本制作从DOM中删掉合理合法的网页页面,并加上自个的內容(该模板表明偏向要下载的资料的连接)。
鱼饵模板后边的HTML编码主视图
每一次访问页面以前,都需要开展服务端查验,以明确是不是已向客户给予了假模板,在这样的情况下,Web服务端将回到合理合法內容。
无文档实行和控制模块安裝
一旦受害者实行了她们刚下载的zip归档中的故意脚本制作,攻击全过程就开始了。
比较严重模糊不清解决的故意脚本制作
此脚本是造成实行最后有效载荷的一些环节中的第一个阶段。下面的图便是一个具体描述:
攻击步骤
环节1:第一个JavaScript
第一个JavaScript控制模块务必由受害者手动式实行的,为了更好地掩藏其真正用意,它被朦胧解决了。模糊不清解决由三层构成,上一层编解码下一层的內容。
第一阶段便是对下一个原素开展编解码:
第一阶段脚本制作
编解码后的輸出是一个分号隔开的JavaScript块二维数组:
用分号隔开的脚本制作二维数组
数组中有四个原素由他们的数据库索引引入,例如,数据库索引为0的原素表明“构造方法”,1是另一个JavaScript代码块,2是空的,3是造成启用给予编码的包裝器。
块1承担载入/写入“HKEY_CURRENT_USER\SOFTWARE\
第三层JavaScript
此字符串常量承担联接到C2,它从文件列表中获得域,并逐一试着他们。假如获得回应,它将持续运作。
上边的下载器脚本制作是载入全过程的第一阶段,在功用层面,它在全部被移除的资料中几乎是一致的。组合间的差别将从下一部分逐渐,下一部分是以C2网络服务器获得的另一个JavaScript。
环节2:第二个JavaScript(从C2下载)
网络服务器的预估回应是一个十进制字符串数组,在其中包括用以认证的伪随机数标识,必须在进一步解决以前将其清除,标识由 “@[request argument]@”构成。
应用C2网络服务器的GET要求
变换为ASCII后,将表明下一个JavaScript,并实行编码。该JavaScript含有内嵌式PE有效载荷,该负载可能是Gootkit的载入程序流程,也可能是REvil勒索病毒的载入程序流程。用以去模糊的优化算法也具有一些差别。
Gootkit组合实例
下载的JavaScript
下载的代码块承担安裝持续性攻击原素,它还运作一个Powershell脚本制作,该脚本载入储存,对它进行编解码并进一步运作。
环节3:储存的有效载荷和编解码Powershell
开发人员还多元化了编号和储存有效载荷的方式,在科学研究员工的测验中,她们观查到了二种编码方法。之中一种文件格式中,PE储存为Base64编号的字符串数组,而在另一种文件格式中储存为十六进制字符串数组,根据用方式更换特殊的数据来模糊不清解决。
有效载荷通常储存为注册表项目录,可是科研工作人员还观查到了一种组合,在其中相近的主要内容被载入TXT文档中。
储存在文档中的有效载荷实例:
有效载荷做为硬盘上的文档
该文件的內容是一个模糊不清解决的Powershell脚本制作,该脚本运作另一个Base64模糊不清解决的层,该层最后对.NET合理內容开展编解码。
用以对资料开展朦胧解决的Powershell脚本制作实例:
下边科学研究工作人员将科学研究载入系统的2个实例:一个造成实行REvil勒索病毒,另一个造成实行Gootkit。
实例1:载入REvil勒索病毒
下边的实例表明了将PE文档编号为模糊不清解决的十六进制字符的组合,在解析的实例中,全部步骤造成了REvil勒索病毒的实行。
执行第二阶段JavaScript将造成有效载荷以密匙目录的方式载入注册表文件。內容被编号为十六进制,并稍微模糊不清解决。
储存在注册表文件中的有效载荷精彩片段,编号为应用方式模糊不清解决的十六进制字符串数组
撰写密匙后,JavaScript会部署一个PowerShell命令,该命令承担解码和运作储存的内容。
JS部件应用Base64编号脚本部署PowerShell
脚本的解码内容:
解码后的内容
它从注册表项中载入内容,并根据更换方式来对其进行模糊不清解决。在已知的实例中,将十六进制字符串数组中的方式 “!@#” 更换为“1000”,随后在.NET Reflection的幫助下对PE开展解码和载入。
下一阶段的PE文档(.NET):
REvil载入程序流程:(0e451125eaebac5760c2f3f24cc8112345013597fb6d1b7b1c167001b17d3f9f)
.NET载入程序流程含有一个硬编码的字符串数组,该字符串是下一阶段的PE:最后的故意负载。 PowerShell脚本启用的Setup函数公式承担解码和运作下一个PE:
硬编码字符串数组(PE)
部署有效载荷
载入程序流程依靠Process Hollowing法(PE引入的精典方式之一)进到下一阶段。
REvil保释金纪录
实例2:载入Gootkit
在另一个普遍组合中,有效载荷另存Base64。注册表项以下面文件格式构成一个PowerShell脚本:
储存有效载荷的注册表项
解码base64编号的内容后,科学研究工作人员获得另一个PowerShell脚本:
大量的PowerShell
它还附送了另一个base64编号的精彩片段,该片段在Reflection Assembly的幫助下进一步压缩包解压和载入。它是.NET二进制文件,与上一个相近。
Gootkit载入程序流程:(973d0318f9d9aec575db054ac9a99d96ff34121473165b10dfba60552a8beed4)
该脚本从.NET控制模块函数调用“Install1”。此函数公式载入另一个PE,该PE做为base64编号的缓冲区域置入在其中:
另一个缓冲区域
部署有效载荷
此次,载入程序流程应用另一种PE引入方式,即手动式载入到父过程中。
表明的有效载荷是Gootkit的第一阶段二进制文件:60aef1b657e6c701f88fc1af6f56f93727a8f4af2d1001ddfa23e016258e333f。该PE用Delphi撰写。在其資源中,科学研究工作人员可以寻找另一个PE(327916a876fa7541f8a1aad3c2270c2aec913bc8898273d545dc37a85ef7307f),该文件已根据XOR开展了单字节模糊不清解决,它被第一个文档进一步载入。
汇总
此主题活动后面的网络攻击应用了十分聪慧的载入程序流程,就好像俄罗斯套娃一样。该载入程序运行了很多流程来躲避检验。由于有效载荷是应用任意取名的密匙存放在注册表文件中的,因而很多网络安全产品将难以监测到并删掉它。
可是,在某种状况时该载入程序流程会承担免费下载REvil勒索病毒。科学研究工作人员以前可以在生物实验室中再现此步骤,但大部分情况下科学研究工作人员都发觉的是Gootkit。
REvil机构对新组员有特别严谨的要求,她们需要经过检测并必需为乌克兰人。在科学研究工作人员搜集到的REvil样版中,她们注意到的一件事是,保释金纪录仍偏向cryptoror.top而不是cryptoror.cc,这说明这可能是一个较旧的样版。
金融机构木马病毒是一种与勒索病毒迥然不同的商业运营模式。勒索病毒在过去的两年中迅猛发展,一部分归功于著名受害人的高额保释金。科学研究工作人员早已见到,金融机构恶意程序(即Emotet)变成了勒索病毒的载入程序流程,在这种载入程序流程中,不一样的网络攻击可以专业科学研究其最拿手的行业。時间会提醒大家Gootkit的重归究竟代表哪些,及其它将怎样发展趋势。
检验与维护
Malwarebytes根据不一样的防护层来避免、检验和删掉Gootkit和REvil。当科学研究工作人员搜集到了进攻指标值后,就可以阻拦散播网址,使客户不下载原始载入程序流程。
当JavaScript根据WinRar或7-Zip等压缩包运用开启时,科学研究工作人员根据个人行为的反运用层还可以阻拦故意载入程序流程,而不易发生一切签字。
阻拦脚本实行
假如系统软件早已进攻了Gootkit,Malwarebytes可以根据清除Gootkit掩藏的注册表项来弥补:
检验掩藏在注册表文件中的有效载荷
最终,科学研究工作人员还会继续检验并停止REvil(Sodinokibi)勒索病毒:
REvil勒索软件被阻拦
进攻指标值
文中翻譯自:https://blog.malwarebytes.com/threat-analysis/2020/11/german-users-targeted-with-gootkit-banker-or-revil-ransomware/倘若转截,请标明全文详细地址。