ICMPv6 Challenge - Astuces

9 décembre 2009 par Chris Laisser une réponse »

OK, voici un indice pour vous diriger dans la bonne direction.

Le défi était: "Ecrire un filtre tcpdump / WinDump qui va capturer les paquets ICMPv6 Multicast Listener".

Cela semble facile, non?

Avec un peu d'aide de Google, vous trouverez que le «type» pour Multicast Listener est de 130, et le champ type ICMPv6 est le premier octet de l'en-tête. Donc, ce devrait être aussi simple que:

tcpdump-nn-p-v-s 0 icmp6 [0] = 130

Toutefois, si vous exécutez la commande que vous obtiendrez de retour:

tcpdump: IPv6 protocole de couche supérieure n'est pas supporté par proto [x]

En d'autres termes, vous pouvez utiliser "icmp6" pour voir tous les paquets ICMPv6, mais vous ne pouvez pas l'utiliser pour filtrer sur l'un des champs d'entête ICMPv6.

Nous avons donc besoin d'un «plan B». Figure dehors de plan B et que vous avez résolu le problème. :)

Related posts:

  1. ICMPv6 Défi
  2. ICMPv6 défi -
  3. Défi tshark - Conseils 3
  4. Options TCP Challenge - indices
  5. Défi Week-End - Suggestion

Publicité

4 commentaires

  1. La solution pragmatique est, bien sûr,

    tcpdump-l-i toute icmp6 | grep-E '\ B160 \ b'

    ou similaire.

    La solution basée sur pcap dépend si vous voulez soutenir têtes d'extension IPv6 ou non. Sinon, vous pouvez tout simplement utiliser un offset de l'entête IP, si vous souhaitez le soutenir, ça commence à devenir plus mal (regardez tcpdump-d ip6 protochain 58 pour un exemple de BPF de chasser ces en-têtes!), Mais là encore, icmp6 ne semble pas vraiment à soutenir que ce soit. Yat-il une solution qui n'implique pas écrire vos propres BPF, et soutient la chasse aux chaînes de protocole?

    / * * Steinar /

  2. Chris dit:

    Grep est convenu est le plus facile la mise en œuvre. Juste rend plus difficile d'enregistrer des fichiers pcap.

    Pour citer la RFC 2710: "Tous les messages MLD décrites dans ce document sont envoyés avec une adresse de lien local IPv6 source, une limite de 1 IPv6 Hop, et une option routeur IPv6 Alert [RTR-ALERT] dans une des options Hop-by-Hop tête. "
    Alors vous avez une tête d'extension à traiter. Comme pour les avoir à chasser les têtes, jusqu'à présent je n'ai vu que les paquets Multicast Listener avec la tête par-hop-hop. Bien que je ne vois rien dans 2710 interdisant l'utilisation des en-têtes supplémentaires.

    • On pourrait imaginer des options IPsec, mais il semble un peu obscur pour MLD ...

      Je suppose que si vous supposez qu'il ya seulement l'option RTR-alerte, il est de longueur fixe et vous pouvez simplement utiliser l'offset. Je n'ai aucune idée si vous pouvez réellement faire itération ou indirection dans les filtres pcap textuelle. :-)

      / * * Steinar /

  3. Slezicz dit:

    Salut, cette fonction n'est pas supportée pour les couches supérieures.
    Donc, si vous souhaitez filtrer par icmp6 packtes est le type et vous savez que tête IPv6 est de 20 octets, vous pouvez tout simplement pas ip6 [21] & 130! = 0. Moyens premier octet après-tête IPv6, et il devrait être tête ICMPv6 ;-) Je ne suis pas sûr, c'est que cela fonctionne, si en-tête suivant seront inclus.

Laisser un commentaire