近日,ThreatLabZ安全研究团队发现了一种新的木马家族——Spymel,该木马旨在窃取信息,且通过使用合法的数字证书逃避检测。
木马简介
感染周期开始于一个恶意的JavaScript文件,该文件被隐藏在电子邮件附件的ZIP压缩文件中。一旦用户打开该JavaScript文件,恶意软件的可执行安装包就会自动下载并在目标机器上安装。
研究发现,该JavaScript文件并没有使用混淆算法,可以轻易地发现其中的恶意链接,Spymel木马的可执行安装包就是通过该硬编码的链接从远程下载的,如图一。
图一 硬编码的URL的屏幕截图
分析过程
已下载的可执行安装包是高度混淆的.NET二进制文件,并且使用颁发给SBO INVEST的证书签名,而发现该问题后,收到通知的DigiCert就立即撤销了该证书。但是两周后,出现了新变种,该变种使用了SBO INVEST的另一个已撤销的证书。
图二 Spymel使用的证书
Spymel的有效载荷散列值:
4E86F05B4F533DD216540A98591FFAC2
2B52B5AA33A0A067C34563CC3010C6AF
Spymel在以下平台上以“svchost.exe”或“Startup32.1.exe”形式存在:
WinXP
%Application Data%\ProgramFiles(32.1)\svchost.exe
%User%\Start Menu\Programs\Startup\Startup32.1.exe
Win7
%AppData%\Roaming\ProgramFiles(32.1)\svchost.exe
%AppData%\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\Startup32.1.exe
Spymel安装后会创建以下注册表,以保证其可以持续感染:
WinXP
HKEY_USERS\Software\Microsoft\Windows\CurrentVersion\Run @ Sidebar(32.1)
HKEY_USERS\Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run @ Sidebar(32.1)
Win7
HKEY_USERS\Software\Microsoft\Windows\CurrentVersion\Run Sidebar(32.1)
HKEY_USERS\Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run Sidebar(32.1)
Spymel的配置数据包括Command & Control服务器和File & Registry信息,这些信息都硬编码在可执行安装包中,如图三:
图三 Spymel的配置数据
分析发现,该安装包中存在以下模块:
1、Keylogging模块
该模块将用户的键盘信息记录在日志文件中(位置:%Application Data%\ProgramFiles(32.1)\svchost.exe.tmp)。图四为该模块对应的类“kyl”:
图四 Keylogging代码
2、ProtectMe模块
该模块防止中断用户终止恶意软件,它禁用了确认提示中的“OK”按钮。进而Taskkill命令不会如预期一样正常工作。图五为该模块对应的类“ProtectMe”:
图五 ProtectMe代码
信息窃取
该恶意软件可以像Task Manager一样监控应用程序,它使用GetForegroundWindow() API获取活动窗口的句柄,并更改其功能。
Spymel使用1216端口连接远程域android.sh(213.136.92.111),一旦连接成功,它就开始发送活动进程窗口的信息。下表为Command & Control服务器发送给该恶意软件的命令:
恶意软件发送的文件内容使用base64编码进行加密,图六为记录浏览器播放视频的代码:
图六 记录浏览器播放视频的代码
总结
目前,使用数字证书伪装恶意软件成为一种通用方法,Spymel是其中一例。攻击者借助社会工程学向目标发送电子邮件,导致感染,进一步窃取敏感信息,Spymel便会监控用户行为并转发给攻击者。对于普通终端用户而言,慎点邮件中的链接是保护自己免受Spymel木马危害的最好方式,毕竟,它使用的链接是很好识别的。