web-dev-qa-db-fra.com

Extrait de PCAP Tous les protocoles trouvés

J'ai des fichiers PCAP et je voudrais simplement obtenir une liste de protocoles présents sur ce fichier PCAP. Je l'aimerais en mode batch, sans utiliser Wireshark

Je pense TSHARK est capable de le faire, mais je ne pouvais pas trouver comment. une idée?

9
VP.

Je pense que -Tfields -eframe.protocols serait la chose la plus proche que vous obtiendrez.
[.____] La sortie ressemble à ceci comme suit:

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

Comme on peut le voir, les informations affichées varieront un peu en fonction duquel le dissecteur de protocole doit jouer. Vous devrez donc faire un post-traitement pour couper les pièces dont vous n'avez pas besoin et/ou dédénagez (par exemple à l'aide de la suggestion de @ Mark dans le commentaire).

As-tu essayé tshark -r test.cap -q -z io,phs

Cela vous donnera une liste hiérarchique de protocoles, je ne sais pas si cela répondrai.

===================================================================
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
===================================================================

Pour obtenir la liste des protocoles, vous pouvez faire de la ligne de commande kungfu.

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

qui vous donnera

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

TCPDSTAT le fera pour vous. Je crois que cela a été mentionné dans l'un des livres de Richard Bejtlich.

3
atdre

Contrairement à la plupart des autres outils, bro détecte les protocoles d'application dans un Port-agnostique . Par exemple, il détecte HTTP non sur les ports standard (80, 8080, etc.), mais dans tout TCP.

L'extraction du nombre de connexions (TCP et UDP) est simple:

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

Exemple de sortie d'une petite trace HTTP:

 19 -
 53 dns
 34 http
2
mavam