Sujet Amossys REDOCS’17

Rétro-ingénierie active de protocoles de communication

Slides

Description : dans le cadre de ses travaux d’évaluation de produits logiciels, le CESTI d’AMOSSYS est amené à éprouver la robustesse et la sécurité des interfaces de communication (décodeurs et parseurs protocolaires notamment). Dans ce cadre, le logiciel open source Netzob [1] est développé depuis 2011 afin d’améliorer cette capacité d’analyse de robustesse sur des implémentations de protocoles propriétaires. Netzob est aujourd’hui en mesure d’aider l’expert dans sa compréhension d’un protocole non documenté, au travers de techniques d’inférence du format de message (notamment issues de la bio-informatique, comme l’alignement de séquences ou le clustering) et d’apprentissage de la machine à états. Plusieurs publications académiques [2], [3] et techniques [4] exposent les contributions faites dans le cadre de ce projet.

L’objectif du travail collaboratif est ici d’explorer le domaine de l’apprentissage actif du format de message d’un protocole, domaine non exploré dans le cadre du projet Netzob. L’idée est ici d’explorer des techniques/algorithmes pour apprendre, en stimulant une implémentation cible :

    • le domaine de variation des champs d’un message ;
  • les éventuelles relations et contraintes entre les champs (notion d’analyse de corrélations) ;
  • l’identification du type des messages ;
  • la compréhension de l’encodage ;
  • l’analyse de la sémantique des champs du message ;

L’outil Netzob pourra servir de support pour des expérience, mais d’autres outils pourront être utilisés (Scapy par exemple), et un travail purement théorique peut être envisagé.

[1] https://github.com/netzob/netzob
[2] Georges Bossert (thèse).Exploiting Semantic for the Automatic Reverse Engineering of Communication Protocols
[3] Georges Bossert, Frédéric Guihéry, Guillaume Hiet. Towards Automated Protocol Reverse Engineering Using Semantic Information. ASIA CCS ’14, Jun 2014, 3
[4] Georges Bossert, Frédéric Guihéry, Guillaume Hiet. Netzob : un outil pour la rétro-conception de protocoles de communication. SSTIC 2012, Jun 2012.