【问题标题】:Sniffing/recording application layer only仅嗅探/记录应用层
【发布时间】:2012-07-30 09:26:05
【问题描述】:

我正在寻找一种工具(最好在 Linux 上),它可以嗅探 UDP 流量并仅将应用程序层记录到文件中。

我无法让 tcpdump/wireshark 这样做,因为他们也总是写下层的标题。 我尝试使用 snort (./snort -qd -l ./logs),但即使数据包中没有应用层数据,它也会继续将数据存储到文件中。

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

哦,UDP流量也是多播的……

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

【问题讨论】:

    标签: recording sniffing network-traffic application-layer


    【解决方案1】:

    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,则只需十几行)

    【讨论】:

    • 感谢 Krumelur,我可以手动使用 nc。问题是(抱歉我忘了提)我想记录多播流量...
    猜你喜欢
    • 2023-03-21
    • 2013-12-07
    • 2014-01-22
    • 1970-01-01
    • 2011-05-16
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多