Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Window Scan

hacking

Définition

Le Window Scan est une variante du ACK Scan qui exploite les détails d'implémentation de la valeur 'Window Size' dans les réponses RST TCP de certains systèmes d'exploitation pour différencier les ports ouverts des ports fermés, même quand ils sont tous accessibles (non filtrés). Cette technique dépend d'une particularité d'implémentation non-standard et ne fonctionne que sur certains OS (principalement des anciens BSD et quelques implémentations commerciales). Les paquets RST TCP incluent un champ 'Window Size' qui, selon la RFC, devrait toujours être à 0 dans les RST (car le récepteur ne s'attend plus à recevoir de données). Certains systèmes d'exploitation anciens (principalement FreeBSD dans certaines configurations et quelques systèmes commerciaux) définissent le Window Size dans le RST selon l'état du port : une valeur non-nulle pour les ports ouverts, 0 pour les ports fermés. Cette implémentation non-standard peut être utilisée comme oracle pour distinguer les ports ouverts des fermés. Le Window Scan (Nmap -sW) envoie des paquets ACK (comme le ACK Scan) mais analyse la valeur Window Size dans les RST en réponse plutôt que la simple présence/absence de réponse. Sur les systèmes vulnérables : RST avec Window > 0 = port ouvert, RST avec Window = 0 = port fermé. Sur les systèmes modernes (Windows, Linux) : Window Size = 0 dans tous les RST, donc le Window Scan ne différencie pas les états. En pratique, le Window Scan est rarement utilisé car sa fiabilité dépend de la version exacte de l'OS et de sa configuration. Il peut être utile pour identifier des équipements anciens avec des implémentations TCP non-standard.

Fonctionnement

Nmap Window Scan : sudo nmap -sW -p 22,80,443,3389 target.com. Nmap analyse le champ TCP Window dans les RST reçus : Window non-nulle → 'open', Window nulle → 'closed'. Combiné avec -sA pour confirmer l'accessibilité : sudo nmap -sA -sW -p 1-1024 target.com. Peu utilisé car la majorité des OS modernes retournent Window=0 dans tous les RST, rendant ce scan équivalent à un ACK Scan standard.

Exploitation offensive

Le Window Scan est utile principalement dans des audits d'équipements legacy — des routeurs, switches, ou systèmes embarqués anciens peuvent avoir des implémentations TCP non-standard identifiables par leurs Window Sizes non-nuls dans les RST. Dans le contexte du fingerprinting passif, la valeur Window Size initiale des SYN/ACK est également un indicateur d'OS (p0f, Zeek utilisent cette valeur).

Détection et mitigation

Identique à l'ACK Scan : les pare-feux stateful bloquent les ACK sans connexion associée. Les IDS détectent les patterns de scan. La mise à jour des systèmes d'exploitation anciens (qui peuvent avoir des implémentations TCP non-standard) vers des versions modernes avec des implémentations RFC-compliant élimine la vulnérabilité Window Size.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis