Journal Netzob : outil de rétro-conception de protocoles de communication

23
13
jan.
2012

Un petit journal pour vous annoncer la sortie d'un outil libre de rétro-ingénierie de protocoles de communication : Netzob* !

Plusieurs cas d'usages sont visés à travers cet outil :

  • le développement d'une implémentation libre d'un protocole de communication propriétaire (ou non documenté) ;
  • l'analyse de sécurité (fuzzing "intelligent", avec compréhension du protocole) sur des implémentations de protocoles propriétaires ;
  • la simulation de trafic réaliste de protocoles de communication propriétaires dans le but de tester des produits tiers (pare-feux, IDS, ...) ;
  • etc.

La version actuelle (0.3.1) implémente déjà pas mal de fonctionnalités permettant de capturer des messages depuis différentes sources (réseau, PCAP, flux inter-processus, fichiers structurés), d'identifier le format des messages (inférence du vocabulaire) ainsi que la machine à états d'un protocole (inférence de la grammaire).

Il existe une petite vidéo présentant un panorama des fonctionnalité de Netzob (capture de données à partir d'un fichier, inférence du vocabulaire, construction de la grammaire puis simulation de trafic) sur un cas simple :

http://vimeo.com/34964757

Nous sommes preneurs de retours d'expériences, et surtout de besoins que vous souhaiteriez voir pris en charge dans Netzob.

Les infos utiles :

*NETwork protocol modeliZatiOn By reverse engineering.

  • # arf

    Posté par  . Évalué à 10.

    après weboob voilà netzob

    Je trolle dès quand ça parle business, sécurité et sciences sociales

    • [^] # Re: arf

      Posté par  . Évalué à 10.

      Il est très important de noter la différence entre web et net; ne pas se tromper, l'usage n'est pas le même.

      • [^] # Re: arf

        Posté par  . Évalué à 10.

        ben oui Le zob n'est pas le boob

        En effet, cette confusion, courante, d'apparence bénigne, me semble extrêmement lourde de conséquences, autrement dit, grave. Comme elle est très facile à éviter, j'essaie de faire en sorte que nous ne la faisions plus.
        Cette confusion ne date évidemment pas des débuts du zob, puisque le boob n'existait pas à l'époque. Je la placerais plutôt vers 1995, avec le lancement d'un navigateur boob au nom fallacieux : Zob Explorer.

        Depuis, l'usage du boob a fortement progressé, devenant la première utilisation du Zob, ce qui a encouragé cette confusion. On entend ainsi parler de « site de Zob », de « navigation de Zob » ou encore d'« aller sur le Zob ».

        Les vampires parasites escrocs commerciaux et marketeux de divers fournisseurs d'accès au Zob y ont vu, sans doute involontairement, une piste pour faire plus de fric segmenter ou contrôler leur marché, en créant des offres d'accès au « Zob » qui ne fournissent rien de plus qu'un accès aux services DNS et HTTP [NdM : ahem...] du Zob. (...).

        Parmi ceux qui connaissent bien le Zob, presque tout le monde critique ces pratiques des FAZ. Par cohérence, il faut combattre la confusion de termes qui a permis leur émergence : cela demande un effort très faible, et si nous, qui nous y connaissons, ne le faisons pas, personne ne le fera. Voudriez-vous d'un accès au « Zob mobile » (...) ?

        Je trolle dès quand ça parle business, sécurité et sciences sociales

        • [^] # Re: arf

          Posté par  . Évalué à 2.

          :-) :-) :-)

          tout, tout, tout
          vous saurez tout sur le (zo)zob

          copyright P.Perret

          Envoyé depuis mon Archlinux

        • [^] # Re: arf

          Posté par  (site web personnel) . Évalué à 10.

          On entend ainsi parler de « site de Zob », de « navigation de Zob »

          T'as oublié les aspirateurs de zob qui ont un peu disparu avec le haut débit.

  • # précaution d'usage ?

    Posté par  . Évalué à 10.

    Est-il nécessaire d'appliquer une couche de NetVazeline au protocole propriétaire avant l'utilisation de Netzob ?

  • # Commentaire sérieux

    Posté par  . Évalué à 6.

    Salut salut ! Bon, j'ai vu ton journal, et je me suis dit que c'était vraiment cool de lancer un outil comme ça. Il y a quelques mois j'ai cherché à faire de la rétro ingénieurie sur un protocole réseau et Wireshark est un outil infiniment pratique, mais pas du tout fait pour ça. Du coup je me disais que ça serait super un outil fait pour ça, et maintenant il existe ! Ça c'est génial !

    Bon, je pensais pas à un truc aussi balèze que ce que tu as fait ( mais ça à l'air plutôt pratique. Alors je suis désolé mais un problème de chargeur fait que je ne peux pas encore vraiment tester ton logiciel (mon chargeur de portable n'est pas correctement reconnu, donc mon CPU tourne à sa fréquence minimale et dès que je change de paquet dans netzob, ça prend environ 30s-1mn avec le CPU à 100% (sur une capture de 500paquets)). Je le testerais en milieu de semaine prochaine histoire de voir.

    Du coup, là je vais juste te dire ce que j'aurais bien aimé dans un logiciel pareil et qui m'ont tellement marqué que je m'en souviens encore !
    Le premier truc, c'est un petit outil toujours à disposition quand on regarde des trames, celui ci permettrait d'effectuer des conversions (on sélectionne un morceau de paquet et on lui dit "unsigned sur 32bits en décimal" ou ce genre de trucs. Avec une possibilité de visionner des données en différentes représentations (ex : ascii, binaire, ...).

    Ensuite, le fait de créer facilement et dynamiquement un genre de filtre, comme sur wireshark, pour voir les protocoles, en gros, on sélectionne un truc, on donne une représentation et un nom, et pour chaque paquet, il nous dit "machin est à telle valeur" (comme wireshark le fait : pour chaque paquet IP il nous dit IP source, IP destination, ... L'idée étant qu'ici, ça serait rapide à faire / corriger et dynamique).

    Et enfin, un truc tout con, permettre de rédiger facilement et proprement un protocole réseau. Je vois que dans netzob il y a moyen de faire des diagrammes par état, ça a l'air sympa, mais est ce qu'il y a moyen de générer une belle documentation de protocole réseau ? (Perso je l'ai commencé avec un fichier plain texte et ... Ben c'est pas super lisible :'( )

    Bon, bref, un super projet, to be continued.

    ps : Oui !! Enfin un commentaire qui ne concerne pas le nom du projet !

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.