web-dev-qa-db-ja.com

見つかったすべてのプロトコルをpcapから抽出

Pcapファイルがいくつかありますが、そのpcapファイルに存在するプロトコルのリストを取得したいと思います。 wiresharkを使用せずに、バッチモードでそれを希望します

tsharkならできると思いますが、方法がわかりません。何か案が?

9
VP.

-Tfields -eframe.protocolsが最も近いものになります。
出力は次のようになります:

eth:ip:tcp:http
eth:ip:tcp
eth:ip:tcp:http:media
eth:ip:tcp
eth:ip:udp:nbdgm:smb:browser
eth:ip:tcp
eth:arp
eth:arp
eth:ipv6:udp:http
eth:ip:udp:http

ご覧のように、表示される情報は、どのプロトコルディセクタが再生するかによって少し異なります。したがって、不要な部分をカットしたり、重複除去したりするために、後処理を行う必要があります(たとえば、コメントで@Markの提案を使用します)。

やってみました tshark -r test.cap -q -z io,phs

プロトコルの階層リストが表示されますが、必要なスイートかどうかはわかりません。

===================================================================
Protocol Hierarchy Statistics
Filter: frame

frame                                    frames:433 bytes:290520
  eth                                    frames:433 bytes:290520
    ip                                   frames:433 bytes:290520
      tcp                                frames:423 bytes:289464
        http                             frames:188 bytes:267285
        ssh                              frames:24 bytes:7968
        ssl                              frames:2 bytes:237
      udp                                frames:10 bytes:1056
        data                             frames:6 bytes:355
        ntp                              frames:2 bytes:180
        nbdgm                            frames:2 bytes:521
          smb                            frames:2 bytes:521
            mailslot                     frames:2 bytes:521
              browser                    frames:2 bytes:521
===================================================================

プロトコルのリストだけを取得するには、コマンドラインでKungFuを実行します。

tshark -r test.cap -z io,phs -q | tr -s ' ' | cut -f 2 -d ' ' | tail -n +7 | head -n -1

あなたに与える

eth
ip
tcp
http
ssh
ssl
udp
data
ntp
nbdgm
smb
mailslot
browser
9
Mark Davidson

tcpdstat がこれを行います。 Richard Bejtlichの本の1つに記載されていると思います。

3
atdre

他のほとんどのツールとは異なり、 Broport-agnosticの方法でアプリケーションプロトコルを検出します。たとえば、標準ポート(80、8080など)だけでなく、anyTCP接続でHTTPを検出します。

接続数(TCPおよびUDP)の抽出は簡単です。

bro -r trace.pcap
bro-cut service < conn.log | sort | uniq -c

小さなHTTPトレースからの出力例:

 19 -
 53 dns
 34 http
2
mavam