针对意大利Ursnif银行木马的示例分析

小编给大家分享一下针对意大利Ursnif银行木马的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

介绍

近期,又有一波Ursnif攻击席卷了意大利!

Ursnif是目前活动最为频繁的银行木马,它也被称为GOZI。实际上,它是Gozi-ISFB银行木马的一个变种版本,自从该木马在2014年泄露了其源代码之后,攻击者这些年来一直都在升级和更新Gozi的功能。而且在这个变种版本中,Ursnif还嵌入了针对Office文档的攻击“武器”,即恶意VBA宏,它可以作为Dropper或经过混淆的PowerShell脚本来隐藏真正的Payload。除此之外,Ursnif还使用了隐写术来隐藏恶意代码并躲避AV检测。

当然了,这个变种还使用了QueueUserAPC进程注入技术来向explorer.exe注入恶意代码,这种技术的隐蔽性更强,因为不需要在目标进程中创建远程线程。

技术分析

初始感染向量以一个无法打开的Excel文件呈现,并要求用户启用宏来查看恶意文档的内容,文件标题通常都是采购订单或者发票等等。

针对意大利Ursnif银行木马的示例分析

在对样本的分析过程中,我们提取出了恶意宏代码,我们发现代码回使用Application.International MS Office属性来检查用户的所属国家。如果返回的国家代码为意大利(代码39),恶意宏将会使用Shell函数来执行下一条攻击指令:

针对意大利Ursnif银行木马的示例分析

恶意宏剩下的函数主要用来准备Shell命令的执行,并使用各种方法来拼接和编码字符串。最终的命令代码包含大量二进制字符串,它们需要使用下列函数来转化为新的PowerShell命令:

[Convert]::ToInt16()-as[char]

针对意大利Ursnif银行木马的示例分析

如上图所示,恶意软件会尝试从至少1到2个嵌入的URL地址去下载一张图片:

https://images2.imgbox[.]com/55/c4/rBzwpAzi_o.pnghttps://i.postimg[.]cc/PH6QvFvF/mario.png?dl=1

这个看似合法的图片实际上包含了新的PowerShell命令,攻击者使用了Invoke-PSImage脚本来制作这张恶意图片,而这个脚本一般用来向PNG文件的像素中嵌入字节或脚本代码。

针对意大利Ursnif银行木马的示例分析

Et voilà是另一段经过混淆的PowerShell代码,Payload采用Base64编码,所以很好处理:

针对意大利Ursnif银行木马的示例分析

代码看似为十六进制编码,可以通过之前的[Convert]::ToInt16函数进行解码。

最终的代码如下:

针对意大利Ursnif银行木马的示例分析

代码会再次检查用户是否位于意大利,信息由下列命令返回:

Get-Culture| Format-List -Property *

如果检测结果为假,脚本会从http://fillialopago[.]info/~DF2F63下载一个EXE Payload,然后将其存储在%TEMP%/Twain001.exe并执行。

在分析的过程中,大多数反病毒软件都无法检测到恶意文件:

针对意大利Ursnif银行木马的示例分析

其中的可执行文件是典型的Ursnif加载器,它负责跟后台服务器交互并下载需要注入到explorer.exe进程中的恶意代码。它使用了IWebBrowser.Navigate函数来从其恶意服务器felipllet[.]info下载恶意数据,其中URI路径会伪造成一个视频文件(.avi)。

针对意大利Ursnif银行木马的示例分析

服务器响应的数据为加密数据,如下图所示:

针对意大利Ursnif银行木马的示例分析

解密后,全部有用的数据都会存储在下面这个注册表键中:

HKCU/Software/AppDataLow/Software/Microsoft/{GUID}

针对意大利Ursnif银行木马的示例分析

注册表键“defrdisc”中包含了下一步需要执行的恶意命令,目标主机启动之后命令会自动执行:

针对意大利Ursnif银行木马的示例分析

命令的主要目的就是通过PowerShell引擎来执行“cmiftall”注册表键中的数据:

C:/Windows/system32/wbem/wmic.exe/output:clipboard process call create “powershell -w hiddeniex([System.Text.Encoding]::ASCII.GetString((get-itemproperty‘HKCU:/Software/AppDataLow/Software/Microsoft/94502524-E302-E68A-0D08-C77A91BCEB4E’).cmiftall))”

“cmiftall”注册表键中的数据是一个以十六进制编码的PowerShell脚本,所以我们可以轻松重构出它所要进行的操作:

针对意大利Ursnif银行木马的示例分析

Ursnif会使用PowerShell脚本来把恶意代码存储到注册表键中,Ursnif能够通过其恶意字节数组来分配空间,其中包含了最终的恶意Payload,并通过调用QueueUserAPC和SleepEx来嵌入到合法进程之中。

Ursnif的完整工作机制如下图所示:

针对意大利Ursnif银行木马的示例分析

入侵威胁指标IoC

哈希:

630b6f15c770716268c539c5558152168004657beee740e73ee9966d6de1753f(老样本)f30454bcc7f1bc1f328b9b546f5906887fd0278c40d90ab75b8631ef18ed3b7f(新样本)93dd4d7baf1e89d024c59dbffce1c4cbc85774a1b7bcc8914452dc8aa8a79a78(最终代码)

Dropurls:

https://images2.imgbox[.]com/55/c4/rBzwpAzi_o.pnghttps://i.postimg[.]cc/PH6QvFvF/mario.png?dl=1https://fillialopago[.]info/~DF2F63http://felipllet[.]info

C&C:

pereloplatka[.]hostroiboutique[.]ruuusisnfbfaa[.]xyznolavalt[.]icusendertips[.]ru

IP:

185.158.248.142185.158.248.143

攻击组件:

HKCU:/Software/AppDataLow/Software/Microsoft/94502524-E302-E68A-0D08-C77A91BCEB4E

Yara规则

import "pe"rule Ursnif_201902 {meta:       description = "Yara rule for Ursnifloader - January version"       author = "Yoroi - ZLab"       last_updated = "2019-02-06"       tlp = "white"       category = "informational"strings:       $a1 = "PADDINGXX"       $a2 = { 66 66 66 66 66 66 66 }condition:       all of ($a*) and pe.number_of_sections ==4 and (pe.version_info["OriginalFilename"] contains"Lumen.exe" or pe.version_info["OriginalFilename"] contains"PropositionReputation.exe") }

以上是“针对意大利Ursnif银行木马的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/tech/safety/221448.html

(0)
上一篇 2022年1月3日 21:53
下一篇 2022年1月3日 21:54

相关推荐

发表回复

登录后才能评论