|
https://gist.github.com/malwarezone/d6de3d53395849123596f5d9e68fe3a3#file-config-txt 配置文件的格式遵循了Zeus恶意软件中定义的标准,恶意软件在该文件中指定了要在目标网站中注入的外部脚本以及注入位置。下图是一个配置文件的片段:
Facebook的:
Kronos恶意软件除了感染浏览器和窃取数据外,它还具有下载功能。在我们的测验中,它下载了一个新的可执行文件,并将其保存在%TEMP%目录中,恶意软件的有效载荷存储在与主安装目录相同名称的其他目录中:
6f7f79dd2a2bf58ba08d03c64ead5ced -nCBngA.exe 从Kronos C&C下载的payload:
命令和控制(C&C)服务器 通过我们的分析发现,Kronos恶意软件在其C&C服务器上运用了Fast-Flux技术,域名每次都被解析成不同的IP。例如,针对hjbkjbhkjhbkjhl.info这个域名,每次从下面给出的IP地址池中随机选择一个作为域名的IP地址: 46.175.146.50 46.172.209.210 47.188.161.114 74.109.250.65 77.122.51.88 77.122.51.88 89.25.31.94 89.185.15.235 91.196.93.112 176.32.5.207 188.25.234.208 109.121.227.191通过对C&C服务器网络通信流量的分析,我们观察到恶意软件每次都通过connect.php这个php文件与C&C服务器进行通信,并附带一个可选参数a: connect.php-初始信标 connect.php?a = 0向C&C发送数据 connect.php?a=1从C&C下载配置文件C&C管理后台 在网上我们找到了泄漏的C&C管理后台代码,这个发现可以让我们对Kronos恶意软件有更进一步的了解。像大多数恶意软件管理后台一样,Kronos管理后台运用PHP编写,并运用MySQL数据库,涉及到的文件如下图所示:
a=0 :发送抓取的页面内容 a=1 :获取配置文件 a=2 :发送记录的窗口 下图是管理后台代码的一个代码片段(具体实现位于connect.php文件中),该php文件负责解析和存储相应命令上传的数据。 #0命令(a=0):
#0命令(a=0):
在脚本程序(可以在这里下载)的帮助下,我们可以解密Kronos bot和C&C服务器之间通信的网络流量,具体如下所述: 1.BotId 由于BotId被用作加密算法的加密,因此我们首先需要获取BotId变量的值,我们在bot程序发送给其C&C服务器(74字节长)的请求中能够找到它:
1./kronos_beacon_decoder.py --infile dump1.bin 解码输出结果中包含了以下两个字段: 1.配置文件的哈希值(如果现在没有配置文件,这部分将填写“X”字符) 2.BotId 例如: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX {117BB161-6479-4624-858B-4D2CE81593A2}因此,上图中的BotId就是{117BB161-6479-4624-858B-4D2CE81593A2}。 2.配置 获取BotId之后,我们可以用它来解密配置文件,配置文件位于a=1请求的响应报文中:
./kronos_a1_decoder.py --datafile dump2.bin --botid {117BB161-6479-4624-858B-4D2CE81593A2}解码后的数据已经上传到github上了,详情参考: https://gist.github.com/malwarezone/a7fc13d4142da0c6a67b5e575156c720#file-config-txt 3.发送报告 有时我们可以在请求中找到Kronos bot报告给C&C服务器的加密数据:
./kronos_a02_decoder.py --datafile dump3.bin --botid {117BB161-6479-4624-858B-4D2CE81593A2}解密后的数据已经上传到github上了,详情参考https://gist.github.com/malwarezone/a03fa49de475dfbdb7c499ff2bbb3314#file-a0_req-txt 结论 Kronos 恶意软件的代码质量方面很高,但相较于其他恶意软件,其功能并没有什么“高明”之处。尽管bot程序在黑市论坛上得到了很好的评价,但由于其定价太高,因此在受欢迎程度方面,它总是落后于其他恶意软件。 |