小编给大家分享一下针对意大利Ursnif银行木马的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。
近期,又有一波Ursnif攻击席卷了意大利!
Ursnif是目前活动最为频繁的银行木马,它也被称为GOZI。实际上,它是Gozi-ISFB银行木马的一个变种版本,自从该木马在2014年泄露了其源代码之后,攻击者这些年来一直都在升级和更新Gozi的功能。而且在这个变种版本中,Ursnif还嵌入了针对Office文档的攻击“武器”,即恶意VBA宏,它可以作为Dropper或经过混淆的PowerShell脚本来隐藏真正的Payload。除此之外,Ursnif还使用了隐写术来隐藏恶意代码并躲避AV检测。
当然了,这个变种还使用了QueueUserAPC进程注入技术来向explorer.exe注入恶意代码,这种技术的隐蔽性更强,因为不需要在目标进程中创建远程线程。
初始感染向量以一个无法打开的Excel文件呈现,并要求用户启用宏来查看恶意文档的内容,文件标题通常都是采购订单或者发票等等。
在对样本的分析过程中,我们提取出了恶意宏代码,我们发现代码回使用Application.International MS Office属性来检查用户的所属国家。如果返回的国家代码为意大利(代码39),恶意宏将会使用Shell函数来执行下一条攻击指令:
恶意宏剩下的函数主要用来准备Shell命令的执行,并使用各种方法来拼接和编码字符串。最终的命令代码包含大量二进制字符串,它们需要使用下列函数来转化为新的PowerShell命令:
[Convert]::ToInt16()-as[char]
如上图所示,恶意软件会尝试从至少1到2个嵌入的URL地址去下载一张图片:
https://images2.imgbox[.]com/55/c4/rBzwpAzi_o.pnghttps://i.postimg[.]cc/PH6QvFvF/mario.png?dl=1
这个看似合法的图片实际上包含了新的PowerShell命令,攻击者使用了Invoke-PSImage脚本来制作这张恶意图片,而这个脚本一般用来向PNG文件的像素中嵌入字节或脚本代码。
Et voilà是另一段经过混淆的PowerShell代码,Payload采用Base64编码,所以很好处理:
代码看似为十六进制编码,可以通过之前的[Convert]::ToInt16函数进行解码。
最终的代码如下:
代码会再次检查用户是否位于意大利,信息由下列命令返回:
Get-Culture| Format-List -Property *
如果检测结果为假,脚本会从http://fillialopago[.]info/~DF2F63下载一个EXE Payload,然后将其存储在%TEMP%\Twain001.exe并执行。
在分析的过程中,大多数反病毒软件都无法检测到恶意文件:
其中的可执行文件是典型的Ursnif加载器,它负责跟后台服务器交互并下载需要注入到explorer.exe进程中的恶意代码。它使用了IWebBrowser.Navigate函数来从其恶意服务器felipllet[.]info下载恶意数据,其中URI路径会伪造成一个视频文件(.avi)。
服务器响应的数据为加密数据,如下图所示:
解密后,全部有用的数据都会存储在下面这个注册表键中:
HKCU\Software\AppDataLow\Software\Microsoft\{GUID}
注册表键“defrdisc”中包含了下一步需要执行的恶意命令,目标主机启动之后命令会自动执行:
命令的主要目的就是通过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会使用PowerShell脚本来把恶意代码存储到注册表键中,Ursnif能够通过其恶意字节数组来分配空间,其中包含了最终的恶意Payload,并通过调用QueueUserAPC和SleepEx来嵌入到合法进程之中。
630b6f15c770716268c539c5558152168004657beee740e73ee9966d6de1753f(老样本)f30454bcc7f1bc1f328b9b546f5906887fd0278c40d90ab75b8631ef18ed3b7f(新样本)93dd4d7baf1e89d024c59dbffce1c4cbc85774a1b7bcc8914452dc8aa8a79a78(最终代码)
https://images2.imgbox[.]com/55/c4/rBzwpAzi_o.pnghttps://i.postimg[.]cc/PH6QvFvF/mario.png?dl=1https://fillialopago[.]info/~DF2F63http://felipllet[.]info
pereloplatka[.]hostroiboutique[.]ruuusisnfbfaa[.]xyznolavalt[.]icusendertips[.]ru
185.158.248.142185.158.248.143
HKCU:\Software\AppDataLow\Software\Microsoft\94502524-E302-E68A-0D08-C77A91BCEB4E
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银行木马的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。