CapTipper:恶意HTTP流量资源管理器工具
CapTipper是一款Python工具,可对HTTP恶意流量进行分析、检测及还原。CapTipper设置了一个与PCAP文件服务器作用相同的web服务器,并包含许多内部工具,具有强大的交互控制台用于分析并监控所发现的主机、对象以及会话。
CapTipper为安全研究人员提供便捷的文件及网络流量访问权限,并且这对研究漏洞、前置条件、版本、混淆、插件以及shellcodes来说也是有用的。
将CapTipper中填入驱动流量捕获(例如一个攻击工具包)会为用户显示出所发送的请求URI以及响应的元数据。
用户可浏览http://127.0.0.1(URI)并且将受到的响应发送至浏览器。此外,利用多个命令发布一个用来深入调查的交互shell,这些命令包括hosts、hexdump、info、ungzip、body、client、dump等等。
分析示例
用途:./CapTipper.py <PCAP_file> [web_server_port=80]
我们分析一下下面的Nuclear EK驱动感染PCAP 2014-11-06-Nuclear-EK-traffic.pcap
初始化会输出在客户端及服务器之间找到的会话,格式如下:
[ID] : REQUEST URI -> SERVER RESPONSE TYPE (FILENAME) [SIZE IN BYTES]
ID: 分配给特定会话的id
请求URI: 被发送至GET请求服务器的URI
服务器响应类型: 返回服务器相应头信息的内容类型
文件名称: 包含以下内容:
1) 响应头信息中的文件名称属性
2) 从URI衍生的内容
3) 如果找不到以上内容,通过CAPTipper分配
字节大小: 响应主体大小
初始化之后,两件事会发生:
1. CapTipper创建一个伪web服务器,行为类似pcap中的web服务器
2. 启动一个Interpreter
Interpreter中包含用于进一步调查pcp对象的内部工具。
仅需用对象id输入’open’便可在浏览器中打开一个URI。
l 实际上没有一个命令(除了‘open’)要求运行服务器。你可以输
入 ’server off’或者在调用CapTipper时添加-s关闭服务器。
我们看一下在不使用浏览器的情况下能够发现什么。
首先,我们通过命令’hosts’对流量有个大概的了解。
似乎www.magmedia.com.au是一个被攻陷的站点。
跨过这个信息以及文件类型,我们看到了会话列表,似乎
grannityrektonaver.co.vu是一个被感染的主机。
那什么是pixeltouchstudios.tk?
呃,了解开发工具包通常是如何工作的可能是TDS(流量分配系统)服务器。
我们再仔细看一看。
我们可以输入’head’以及’body’打印出页面的header及body:
l 默认状况下,body命令返回前256字节,你可输入body 2 1000进行
修改,它可打印出前1000个字节。
我们看到,对象2向被感染的主机返回一个302 redirection。
所以,我们的假设很有可能是正确的。
我们输入info获取更多关于object 2的信息:
那个页面推荐的当然是magmedia.co.au,那么我们实际上被导向哪里了呢?
通过对会话的观察,它可能把我们导向检索页或者javascript文件。
我们来快速看一下这个javascript文件(object 1)
嗯……发生了什么?我们来看一下头信息
这个响应是个压缩程序。
我们解压一下:
太好了。创建了一个新的对象(15)。
我们看看。
那么,这是JS文件的压缩版本。
记住,我们想知道是什么把我们导至TDS的,但我们完全可以认为它是一个内嵌框架,所以我们可以通过命令iframes来搜索这个新对象中的内嵌框架.
好了。攻击者植入/修改了这个javascript并且将用户发送至TDS。
现在,我们来看一下感染服务器中的文件。
再次输入’convs’会显示如下会话:
看看,我们都得到了些什么东西…….
貌似我们有1个PDF文件,2个SWF文件以及4个EXE文件,这些可能是由shellcode下载的。
我们可以将所有的文件放入一个文件夹并且通过’dump’函数来进一步检查,可以添加-e以便不会转储EXE文件,这样就不会误发布。
正如你看到的那样,它同时会将新建的压缩javascript文件进行转储。
同时,我们可以利用CapTipper对文件进行检查。
让我们通过hexdump来看一看第一个SWF文件。
我们再来看一看第二个:
有意思的东西出现了。这个文件开始使用PK魔字节(magic bytes),这意味着它实际上是一个压缩文件,它可以由几个东西组成。
输入命令’ziplist’来看一看压缩文件里面的文件
看起来,是一个真正的Silverlight利用。
现在,我们用它真正的扩展进行转储:
同时,我们将文件的md5哈希发送至VirusTotal来看一下它是否被任何杀毒提供商认出来,输入命令’vt’。
这些需要一个VirusTotal API公钥。
(文件本身没有发送至VT,只有文件的哈希被发送!)
我们发现,大多杀毒软件将这个文件定义为恶意文件,而且一些杀毒软件甚至提供了利用CVE(2013-0074)。
如果你没有VirusTotal API公钥,你可以使用命令hashes并手动将这个哈希发送至VirusTotal。
可从GitHub上获取CapTipepr: https://github.com/omriher/CapTipper。
本文由 360安全播报 翻译,转载请注明“转自360安全播报”,并附上链接。
原文链接:http://www.omriher.com/2015/01/captipper-malicious-http-traffic.html