2012-07-30 53 views
0

我正在寻找一种工具(最好在Linux上)可以嗅探UDP通信并仅记录应用程序层到文件。仅嗅探/记录应用程序层

我不能让tcpdump/wireshark这样做,因为他们总是写下层的头。 我尝试使用snort(./snort -qd -l ./logs),但它仍然保存数据到文件,即使数据包中没有应用程序层数据。

也许有人知道这样的工具...

哦,和UDP流量也多播...

我也试过多巨灾(VideoLAN的的)。他们声称这是多播的netcat。但我不知道,除了我使用netcat手动发送的有效载荷外,它还存储了一些其他二进制垃圾(对我来说)... 任何熟悉multicat的人?

回答

0

Wireshark具有解析大多数协议标题的过滤器,并且一定会识别UDP,IP,以太网等标题。我不知道你想用日志记录完成什么,但是如果文件的格式很重要(即没有头文件应该存储到文件中),你可以尝试使用UDP代理。

使用netcat的,你可以不喜欢

nc -u -l 12345 | tee mydumpfile.out | nc -u target.example.com 12345 

你必须做反向以及倾倒双向通信。如果您正在进行逆向工程,您可能还需要编辑/etc/hosts文件以将目标DNS名称指向localhost。我为TCP连接做了几次,但是我没有尝试用于UDP,由于缓冲了管道数据,可能会出现数据包边界等问题。

如果你想最大程度的控制,写自己(这只是一个十几行,如果你使用例如Python+Twisted

+0

感谢克鲁梅尔尔,我得到的东西与手动nc的工作。问题是(并且抱歉,我忘了提及它)我想记录多播流量... – user1562402 2012-07-30 16:43:19