前言
通常情况下,攻击者会通过多种攻击方式来确保攻击的成功,使用恶意软件Hancitor(又名Chanitor)来进行攻击的攻击者也不例外,并且会采取三种方式来传播Hancitor,以便窃取受害者数据,其采用的技术包括罕见的API滥用和PowerShell方法。
FireEye在最近的Hancitor攻击中发现,攻击者通过分布在垃圾邮件的附件中来传播Hancitor恶意软件,该恶意软件软件一旦下载并执行,会通过中间payload远程下载小马DLL及Vawtrak网银木马来执行,进而进行数据窃取,并连接到C&C服务器。
第1阶段:电子邮件传送
在电子邮件中,观察到一些涉及发票的钓鱼邮件,这些邮件的附件是包含恶意宏的office文档,启用后会下载Hancitor,如图1所示。
图1 带恶意文档附件的邮件
第2阶段:宏观和引诱机制
一旦打开附件,恶意软件会采用典型的引诱机制,诱导受害者启用宏,如图2所示,FireEye观察到攻击者使用了三种不同的攻击方法。
图2 引诱受害者启用宏
1、第一种方法
与其他的恶意宏不同的是,这个方法在运行payload时没有直接调用API,通常情况下宏可以直接调用API,但是不能运行shellcode。而用于传送Hancitor的恶意宏能够调用本地的Windows API“CallWindowProc”,以此解释执行shellcode,如图3所示。
图3 使用CallWindowProc来执行shellcode的宏代码
2、第二种方法
最近,FireEye捕获一个Hancitor样本,该样本利用新的API回调函数。除了使用CallWindowProc外,还可以使用EnumResourceTypesA函数来解释执行shellcode,如图4所示。
图4 EnumResourceTypesA函数API声明
3、第三种方法
在一个恶意文档文件中发现用于传送Hancitor的第三种方法,虽然攻击者和C&C服务器与第二种方式类似,但是这个方法使用了另一种策略,以达到窃取数据的目的。
在这种方法中,图2所示的引诱消息还有另一个目的,它不仅诱导受害者启用宏,而且被赋予一个替代的文字“fkwarning”,如图5所示。宏具有检查该属性的代码,以确保引诱消息形状对象存在。如果没有找到这个对象,宏将退出,并且不下载其他的payload。
图5 确保诱导信息的代码
但即使找到了引诱消息,Hancitor在运行一次宏后,也会将引诱消息删除,使得宏不会被再次执行,如图6所示。
图6 包含引诱消息删除的代码
该恶意宏通过显示网络错误的文档替换删除的图片,以减少用户的怀疑,如图7所示。值得注意的是,该文本始终存在于恶意宏中,但是只有宏第一次执行时该文本才是可见的。
图7 隐藏文本在宏第一次执行可见
之后,宏会结合代码片段来执行PowerShell命令,不像其他方法将恶意代码隐藏在代码、表单或者元数据中,该方法将代码嵌入图像的section_header内,通过提取代码片段并组合成PowerShell命令,如图8所示。该技术能够逃避一些检测宏的基本静态方法。
图8 增大字体后在观察到的PowerShell命令
该恶意软件的作者采取了非常简单但有趣的方法来掩盖PowerShell命令文本,即将字体大小设置为小1,如图9所示,这样就可以减少用户在不经意间观察到异常的可能性。
图9 最小字体隐藏页眉内容
Hancitor使用“DownloadFile”方法,从攻击者控制的网站获得一个ZIP压缩包格式的payload,PowerShell使用“copyhere”方法来解压payload,“.Item”的属性被设置成16,并且会忽略所有的警告,如图10所示。
图10 下载和解压payload的代码
一旦从压缩包中解压出可执行文件,宏代码会使用“Kill”来删除所下载的压缩包,可执行文件被运行后,将下载小马和Vawtrak网银木马变种来窃取数据。
图11 删除压缩包的代码
4、殊途同归——不同的方法,相同的Hancitor
虽然通过第二种和第三种方法来分发Hancitor存在着差异,但是其目标却是相同的,并且二者都使用了相同的命令和C&C服务器。
不过,通过对比知道,Hancitor第二个方法中的C&C服务器和第一个方法还是有点区别,第二个方法中的URL结尾是ls5/gate.php,而第一个的是ls4/gate.php,如图12所示。
图12 更新对比的Hancitor
第三阶段:第一阶段的payload
该文件将自身复制到“%SYSTEM32%”,并创建一个持久运行注册表键值项。在执行时,它会与攻击者控制器网站进行通信,以下载小马恶意软件“pm.dll”的变体和Vawtrak网银木马。
第四阶段:第二阶段小马payload窃取数据的能力
在第二阶段观察到小马变体的数据窃取能力,其中包括:
1)窃取自动填充的Intelliforms数据,包括用户密码,如图13所示。
图13 窃取Intelliforms注册表项的内容
2)在图14中可以看到,唯一的GUID有助于保存解密的凭证。
图14 凭据窃取
3)从“signons.txt”访问Mozilla保存的密码,如图15所示。
图15 访问Mozilla保存的密码
4)图16给出了通过访问微软OMI邮件配置信息进行数据窃取,可以看到与outlook配置信息相关的注册表项,其中包含有关的电子邮件和其他的数据存储。
图16 通过注册表访问并窃取Outlook数据的恶意软件代码
结论
负责Hancitor编写的作者已经开发出恶意宏中的几个功能,支持恶意软件安装和数据窃取。这些功能包括利用罕见的API和混淆的PowerShell命令,使得检测变得更加具有挑战性。
FireEye建议阻止来自互联网office文档的宏,在所有情况下谨慎启用宏,并且用户应当对不受信任来源的电子邮件提高警惕。
*来源:FireEye,转载请注明来自MottoIN
原创文章,作者:Moto,如若转载,请注明出处:http://www.mottoin.com/article/network/89991.html