OS Fingerprinting
hackingDéfinition
Le fingerprinting d'OS (Operating System Fingerprinting) est la technique d'identification du système d'exploitation d'une machine cible sans y avoir accès direct, en analysant les caractéristiques spécifiques de son implémentation de la pile TCP/IP. Chaque système d'exploitation implémente légèrement différemment les protocoles réseau (valeurs TTL, taille de la fenêtre TCP, options TCP, réponses aux paquets malformés), créant une signature distinctive.
Il existe deux approches : le fingerprinting actif et le fingerprinting passif. Le fingerprinting actif (comme celui de Nmap avec l'option -O) envoie des paquets TCP, UDP et ICMP spécialement conçus pour provoquer des réponses révélatrices, puis compare les réponses à une base de signatures contenant les profils de centaines de systèmes d'exploitation. Le fingerprinting passif (p0f, NetworkMiner) analyse uniquement le trafic réseau existant sans envoyer de paquets supplémentaires.
Les paramètres clés analysés incluent : la valeur TTL initiale (64 pour Linux/macOS, 128 pour Windows, 255 pour certains équipements réseau), la taille de fenêtre TCP initiale, l'ordre des options TCP, la réponse aux paquets TCP avec des flags illégaux (combinaisons FIN+URG+PSH pour le scan Xmas), le comportement des séquences TCP (ISN), et les réponses aux sondes ICMP spécifiques.
La connaissance du système d'exploitation oriente toute la stratégie d'exploitation : les exploits noyau, les techniques de post-exploitation, les méthodes de persistance et les outils utilisés diffèrent fondamentalement entre Windows, Linux, macOS et les systèmes embarqués. Un système Windows Server identifié comme Exchange Server suggère des chemins d'attaque spécifiques (ProxyLogon, ProxyShell, NTLM relay), tandis qu'un Linux Ubuntu expose des vecteurs différents.
Sur les réseaux internes, le fingerprinting d'OS permet de cartographier les systèmes critiques (contrôleurs de domaine Windows Server, serveurs de base de données, équipements réseau) et de prioriser les vecteurs d'attaque les plus prometteurs.
Fonctionnement
Nmap OS detection (nmap -O cible) envoie jusqu'à 15 sondes spécialement conçues vers des ports ouverts et fermés et analyse les 7 caractéristiques de la réponse TCP (ISN sampling, IPID, window size, TCP options, ICMP responses). La correspondance avec la base de données des empreintes (nmap-os-db) produit une identification avec un pourcentage de confiance. p0f analyse passivement les paquets SYN entrants pour identifier les OS des clients se connectant à un service.
Exploitation offensive
L'identification précise de l'OS permet de sélectionner les exploits appropriés : les shellcodes sont spécifiques à l'architecture et au système, les offsets pour les buffer overflows dépendent des versions exactes des bibliothèques, et les techniques d'évasion AV/EDR varient selon le système. Un Windows 10 21H2 identifié orientera vers les exploits du kernel connus pour cette version.
Détection et mitigation
La normalisation des paquets TCP/IP via des outils comme pf (OpenBSD) ou iptables peut masquer les signatures d'OS. Sur les réseaux internes, les IPS peuvent détecter les patterns caractéristiques des sondes Nmap OS detection. La segmentation réseau limite la portée du fingerprinting aux segments accessibles.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h