Toolsmith #124: Dripcap - 含咖啡因的数据包分析器
Dripcap是一款基于Electron的现代图形化数据包分析器。Electron是什么?“Electron是一个使用Web技术(如JavaScript、HTML和CSS)创建原生应用程序的框架。它处理了困难的部分,因此您可以专注于应用程序的核心。”
我们都应该非常熟悉久负盛名的Wireshark,因为它长期以来一直是寻求图形界面分析PCAP文件的数据包分析师的先驱。但偶尔探索替代方案也很有趣。我一直很喜欢NetworkMiner,而Microsoft Message Analyzer和Xplico等工具各有独特的优势。
对于熟悉Wireshark的基本用户来说,您可能会发现Dripcap在此阶段有些基础,但它确实让您有机会在基本层面探索数据包捕获,并在没有更强大工具提供的功能支撑的情况下学习。
然而,对于JavaScript开发人员来说,Dripcap开启了一个全新的可能性世界。阅读创建NTP解析器包教程,您可以创建、发布和加载您选择的解析器(及其他)包。
安装
我在Windows上使用Chocolatey从源代码构建Dripcap,步骤如下:
从管理员PowerShell提示符(确保Get-ExecutionPolicy不是Restricted)执行以下操作(在步骤2后重新启动管理员PS提示符):
|
|
步骤1安装Chocolatey,步骤2使用Chocolatey安装工具,步骤3克隆Dripcap,步骤5和6安装包,步骤7构建所有内容。执行dripcap,您应该就可以运行了。
您也可以使用Node.js包生态系统的一部分npm,通过npm install -g dripcap安装Dripcap CLI,或直接从Dripcap Releases下载dripcap-windows-amd64.exe。
实验
我将带您使用Dripcap进行某种数据包切割。Dripcap最强大的功能之一是其过滤能力。我使用了一个包含Operation Aurora Internet Explorer漏洞(CVE-2010-0249)载荷的旧PCAP文件进行此工具测试。
Ctrl+O将为您导入Pcap文件。
点击Developer,然后Toggle Log Panel以获取完整日志。
您会注意到四个长度为1514的数据包,如图1所示。探索第一个数据包表明正是我们所预期的:以太网MTU(最大传输单元)为1500字节,TCP载荷为1460字节,留下40字节用于我们的报头(20字节IP和20字节TCP)。
将鼠标悬停在UI中的TCP详细信息上将突出显示所有TCP特定数据,但您可以进一步采取此类操作。首先,让我们用tcp.payload.length == 1460过滤出仅大数据包。
通过减少视图,我们可以使用Dripcap轻松进行一些底层和粗糙的切割。在这四个过滤后的数据包中,我悬停在"Payload 1460 bytes"上,如图4所示,这突出了载荷特定的十六进制。然后我使用鼠标捕获突出显示的内容,并使用Dripcap的Edit和Copy,仅获取该载荷特定的十六进制,并将其粘贴到文本文件中。
我对这四个数据包中的每一个都这样操作,并将内容一个接一个地复制到文本文件中,形成紧密、无缝的序列。然后我使用Python Tools for Visual Studio进行快速的十六进制到ASCII转换,如bytearray.fromhex("我的十六进制片段在这里").decode()一样容易。结果如图5所示,显示了利用CVE-2010-0249的JavaScript载荷。
您也可以同样轻松地使用在线转换器。我将ASCII结果保存到已从反恶意软件保护中排除的目录中的文本文件。将文件作为payload.txt上传到VirusTotal后,我的预期得到确认:56个AV提供商中的32个将文件检测为Exploit:JS/Elecom.D或更直接的Exploit.JS.Aurora.a。
结束语
也许不是最优雅的方法,但使用Dripcap的过滤和编辑功能快速且轻松地工作。我希望看到这个工具及其社区继续成长。构建解析器包,创建主题,成为过程的一部分,看到安全从业者可用的替代方案总是好的。
干杯…直到下次。