Toute personne pratiquant des audits de sécurité ou bien des tests d'intrusion s'est trouvée un jour (ou plusieurs ;)) dans la situation où l'identification du système d'exploitation donnée par nmap était totalement erronée. En analysant le problème, je suis arrivé à la conclusion que l'approche de nmap n'était plus adaptée pour une utilisation dans les conditions réseau d'aujourd'hui. Seule solution, écrire un nouvel outil d'OSFP avec comme objectif : un système d'exploitation détecté pour un port TCP ouvert. Mise en garde : étant l'auteur de l'outil, il se peut que cet article soit un peu biaisé ;)
1. Présentation de SinFP [1]
SinFP est un outil de prise d'empreinte des systèmes d'exploitation (OSFP), basé sur une approche par port, et non par IP. Il est écrit entièrement en Perl, et se base sur le module Net::Packet [2] pour tout ce qui est construction de trames. L'OSFP ayant été expliqué en détail précédemment (voir MISC7 [3]), je considèrerai pour cet article le principe comme acquis par le lecteur.
Fonctionnalités principales :
- écrit sous forme de module Perl, afin de faciliter son intégration dans tout autre programme ;
- prise d'empreinte active et passive sur IPv4 ;
- prise d'empreinte active et passive sur IPv6 ;
- si une correspondance IPv6 n'est pas trouvée dans la base, possibilité d'utiliser les signatures IPv4 ;
- analyse passive en mode en ligne et hors ligne ;
- analyse active rejouable hors ligne sur un fichier pcap généré au premier lancement ;
- possibilité de ne jouer qu'une partie des tests ;
- algorithme de recherche...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première