Résumé
- Dans l’échange en quatre messages de WPA2, le point d’accès peut légitimement retransmettre le message 3 s’il n’a pas reçu le message 4. Des clients vulnérables réinstallaient alors une clé déjà en service.
- L’attaque ne révélait ni le mot de passe Wi-Fi ni la clé de session. Elle réinitialisait les numéros de paquets et compteurs anti-rejeu associés à cette clé, selon des effets variables suivant le chiffrement et l’implémentation.
- La correction laisse le client répondre à la copie reçue, mais rend l’installation unique : une clé fraîche est installée une seule fois et son état monotone ne revient jamais en arrière.
La tolérance aux pertes est inscrite dans le dialogue même de WPA2. Après le message 3, le client installe la clé transitoire négociée puis expédie le message 4. Si ce dernier disparaît sur le lien radio, le point d’accès n’a aucun moyen de savoir que l’opération a réussi. Il renvoie donc le message précédent. Sans ce comportement, une perte banale suffirait à bloquer la connexion.
KRACK a utilisé cette reprise normale comme levier. Dans l’attaque publiée par Mathy Vanhoef et Frank Piessens à CCS 2017, un adversaire placé à portée radio établit une position d’intermédiaire par canal. Il empêche le message 4 d’arriver, obtient la retransmission du message 3, puis la remet au client. Ce message est bien authentique. La faille ne consiste pas à l’accepter, mais à répéter l’effet irréversible qui lui avait déjà été associé.
Réinstaller une clé ne se résumait pas à recopier les mêmes octets. Certaines piles réinitialisaient aussi le nonce utilisé comme numéro de paquet à l’émission et le compteur de rejeu à la réception. Une clé demeurée secrète pouvait ainsi être utilisée une nouvelle fois avec un état ancien. La confidentialité du secret et l’authentification de la session restaient vraies, alors que la chronologie indispensable à la sûreté du chiffrement ne l’était plus.
Cette mécanique interdit les raccourcis. KRACK ne cassait pas le mot de passe WPA2 ; changer celui-ci n’était donc pas une mesure corrective. Les conséquences n’étaient pas identiques partout non plus. Avec CCMP, l’article décrit des possibilités de rejeu et de déchiffrement, sans donner directement la faculté de forger n’importe quelle trame Wi-Fi. TKIP et GCMP peuvent aussi permettre la falsification. Une injection dans TCP ou HTTP suppose encore un trafic approprié et d’autres manipulations.
Le cas très grave d’une clé temporelle entièrement nulle concernait certains usages de wpa_supplicant sous Linux et Android. Il serait erroné de l’attribuer à tous les appareils WPA2. La direction du trafic, le type de clé, le protocole de confidentialité et le code exécuté déterminaient chacun une partie de l’impact.
La portée intellectuelle de KRACK dépasse ce défaut particulier. Les preuves formelles évoquées par les chercheurs établissaient notamment le secret de la clé et l’authentification de la session. Elles ne représentaient pas le moment où le programme installe la clé, ni la répétition éventuelle de cet acte. Le protocole prouvé et la machine à états réellement exécutée ne couvraient pas exactement le même objet.
La règle de réparation tient en une séparation. Lorsqu’un message 3 valable revient, le client peut renvoyer le message 4. Il ne doit pas réinstaller la clé de session. On peut refuser de remettre les compteurs à zéro lorsqu’une clé déjà utilisée est configurée, ou n’autoriser qu’une seule installation de chaque clé fraîche au cours d’une exécution de l’échange.
Le format des trames ne change pas. Un client corrigé continue donc de fonctionner avec un point d’accès non corrigé : la retransmission reste possible, la réponse également, tandis que la transition locale devient non répétable. Cette compatibilité autorise des adoptions indépendantes au lieu d’exiger une migration coordonnée de tout le réseau.
La cartographie des correctifs restait néanmoins complexe. VU#228519 du CERT/CC regroupe une famille de CVE à partir de CVE-2017-13077 et distingue plusieurs échanges de clés. L’avis amont de hostapd et wpa_supplicant sépare les rôles de station et de point d’accès, 802.11r, les clés de groupe, les pilotes et les micrologiciels. Le bulletin Android rattache les corrections au niveau du 6 novembre 2017, tout en signalant que des composants de fabricants de puces peuvent exiger leur propre mise à jour.
Le suivi publié en 2018 complète utilement le dossier. La plupart des fournisseurs testés avaient diffusé une correction, mais les chercheurs ont encore trouvé des erreurs d’implémentation et un contournement de moindre impact concernant une clé de groupe. Un numéro de version ou un avis ne suffit donc pas : il faut éprouver la transition dans le produit réellement déployé.
L’enseignement général est sobre. L’authenticité d’un message indique son origine ; elle ne prouve jamais que l’action qu’il autorise peut être répétée sans danger.
Briefing des membres
Contexte approfondi du profil
Connectez-vous avec le bon niveau d'adhésion pour débloquer le briefing complet et les notes de source.
Réservé à Strategic Circle
Strategic Circle
Ouvert à tous les lecteurs. Débloquez les briefings de profil après adhésion et connexion.
Rejoindre Strategic CircleRéservé aux membres de Leadership Alliance
Leadership Alliance
Réservé aux propriétaires et dirigeants qualifiés d'actifs IP ; connectez-vous pour débloquer les briefings Alliance.
Rejoindre Leadership Alliance
