揭秘银行木马Chthonic:网银大盗ZeuS的最新变种
说到Zeus/Zbot,做安全多多少少都会有所了解。Zeus是对金融系统威胁最大的僵尸网络之一,控制者借助僵尸程序窃取账户登录信息和信用卡号码。Zbot往往通过垃圾邮件来传播,中招的会下载一个程序,这个程序会控制网银,偷取信息。近期卡巴斯基实验室发现了一款ZeuS的最新变种Chthonic。
2014年秋季,卡巴斯基发现了一款新的银行木马,之所以引起了卡巴斯基的注意是因为:
首先,从技术上来说这款病毒非常有趣,它使用了一种新技术加载模块。
其次,通过分析它的配置文件我们发现,这款木马针对的是大量在线银行系统:超过150家不同的银行,还有来自15个国家的20个支付系统。主要针对来自英国、西班牙、美国、俄罗斯、日本和意大利的银行。
卡巴斯基实验室将这款新病毒命名为Trojan-Banker.Win32.Chthonic。
虽然经过大量修改,我们还是察觉到这款木马是ZeusVM的变种。Chthonic使用与Andromeda bots相同的加密器,与Zeus AES和Zeus V2木马相同的加密方案,与ZeusVM和KINS类似的一款虚拟机。
感染方式
Trojan-Banker.Win32.Chthonic感染主机有两种方式:
发送带有exploits的电子邮件;
使用Andromeda bot(Backdoor.Win32.Androm)下载到受害者主机上。
发送带有exploits的电子邮件:犯罪分子会附上一个“精心制作”的RTF文件,文件会利用微软Office产品中的CVE-2014-1761漏洞。文件的使用的是.DOC后缀,为的是看起来不那么可疑。
如果成功的话,受害者的主机就会下载一个downloader木马。上图例子中,这个downloader木马来自一个被攻陷的网站 —— hxxp://valtex-guma.com.ua/docs/tasklost.exe。
Andromeda bot则会从hxxp://globalblinds.org/BATH/lider.exe下载downloader木马。
下载木马
一旦downloader被下载,就会向msiexec.exe注入代码。似乎这款downloader是基于Andromeda bot的源代码修改的,虽然两者采用了不同的通信协议。
Andromeda和Chthonic downloader的相似之处
Andromeda和Chthonic C&C采用了不同的通信协议
Chthonic的downloader包含一个加密的配置文件(KINS和ZeusVM也使用了类似的加密)。配置文件主要包括:一个C&C服务器列表,一个用于RC4加密的16字节密钥,UserAgent和僵尸网络ID。
调用虚拟机函数的主要过程
解密配置文件后,内容即被以以下形式储存在堆内存中:
这个过程没有传递指针。Andromeda bot会通过RtlWalkHeap函数检查每个堆元素,将起始的4个字节与MAGIC VALUE匹配。
downloader会收集本地IP,僵尸id,系统信息,语言信息,uptime和其他信息,然后先用XorWithNextByte进行加密,再用RC4,接着把信息发送到配置文件中指定的一个C&C地址。
发送信息后,木马会收到一个扩展加载器。不是标准的PE文件,而是一系列片段,加载器会把这些片段映射到内存,这些片段包括:可执行代码,重定位表,入口点,导出的函数和引入表。
Andromeda和Chthonic中的import setup片段
头文件
扩展加载器中还包含一个使用虚拟机加密的配置文件。它会加载木马的主模块,然后主模块会下载其他模块。扩展加载器本身使用AES加密,而其他片段是用UCL打包的。主模块加载其他模块,建立引入表的方式与Chthonic downloader很相似。
模块加载过程见下图:
模块
Trojan-Banker.Win32.Chthonic采用模块结构。至今为止我们已经发现的模块:
名称 描述 是否有64位版本
main 主模块 (v4.6.15.0 – v4.7.0.0) 是
info 收集系统信息 是
pony 窃取保存的密码 否
klog Keylogger 是
http Web注入和表单存取 是
vnc 远程控制 是
socks 代理服务器 是
cam_recorder 使用摄像头录视频 是
木马中有很多函数通过各种手段窃取在线银行的用户名密码。而VNC和cam_recorder模块能让攻击者远程连接感染的电脑并且进行交易,还可以用电脑的摄像头和麦克风录下视频音频。
注入
Web注入是Chthonic的主要武器:他们能够用木马在浏览器打开的网页代码中插入自己的代码和图片。攻击者能够借此获取受害者的手机号码,一次性密码和PIN,还有受害者输入的用户名和密码。
例如,当用户访问日本银行时,木马会隐藏银行的提示警告,并且插入脚本,使得攻击者能够使用受害者的账号进行转账:
在线网银网页截屏(注入前/注入后)
注入的脚本中的函数
注入的脚本也会显示很多假窗口,以获取攻击者想要的信息,如下图所示,窗口显示一个警告,警告用户账号认证有问题,提示用户输入交易验证码(TAN,Transaction Authentication Number):
交易验证码输入窗口
不过我们的分析发现针对俄罗斯银行的注入有点异常。当受害者打开一个在线银行网页时,网页的整个页面都被替换了,而不是像其他银行一样只注入一部分。木马会创建一个与原来窗口大小一样的iframe,覆盖原网页。
下图是注入的代码的片段,这段代码会替换title与body结束标记之间的内容:
脚本内容:
如果注入成功,bot就会收到指令建立反向链接:
覆盖区域
病毒袭击了15个国家的150家银行和20个支付系统。攻击者主要针对英国、西班牙、美国、俄罗斯、日本和意大利的银行。
Chtonic目标的国家分布
值得注意的是,尽管配置文件的列表中有很多目标,但很多用于web注入的代码片段已经不能用了,因为银行更改了他们的网页,有的银行甚至域名都改掉了。另外,有些代码片段我们几年前在其他病毒(例如Zeus V2)的配置文件中看到过。
总结
我们看到ZeuS木马仍然在不断更新完善,加入新的技术。这得益于ZeuS源码的泄露。所以很多写木马的把它拿来当框架了,任何人都可以加入新功能满足需求。
所以,以后我们无疑会看到更多的ZeuS新变种。
相关文章
- 3条评论
- 晴枙忆沫2022-06-09 23:33:31
- 马。 下载木马 一旦downloader被下载,就会向msiexec.exe注入代码。似乎这款downloader是基于Andromeda bot的源代码修改的,虽然两者采
- 假欢婼粥2022-06-10 07:15:33
- 而不是像其他银行一样只注入一部分。木马会创建一个与原来窗口大小一样的iframe,覆盖原网页。 下图是注入的代码的片段,这段代码会替换title与body结束标记之间的内容: 脚本内容: 如果注入成功,bot就会收到指令建立反向链接: 覆盖区域 病毒袭击了15个国家的150家银行和20个支
- 假欢蓝殇2022-06-10 01:50:36
- xtByte进行加密,再用RC4,接着把信息发送到配置文件中指定的一个C&C地址。 发送信息后,木马会收到一个扩展加载器。不是标准的PE文件,而是一系列片段,加载器会把这些片段映射到内存,这些片段