« J'espère que le standard est plus ambigu que ça [...]»
Le problème ici n'est pas le standard, mais l'implémentation de wpa_supplicant qui est tout simplement mauvaise. C'est en fait une malheureuse coïncidence que le type l'ai découvert en même tant que son attaque.
Ce qui se passe:
- message 1 <--, le device reçoit des informations pour dériver sa clé X ;
- message 2 -->, il renvoie d'autres informations ;
- message 3 <--, il reçoit d'autres informations et installe à ce moment la clé X, puis il efface le bloc mémoire temporaire où elle était stockée ;
- [...]
- re-message 3 (attaque) <--, il re-installe la clé X, "oubliant" qu'il vient en fait d'effacer ce bloc mémoire.
C'est véritablement un bug. Le développeur en effaçant la mémoire a fait un peu de zèle, et c'est une pratique conseillée dans ce cas pour éviter d'avoir une clé confidentielle inutilement en mémoire qui pourrait être découverte avec une attaque type heartbleed, mais il a oublié ce cas particulier.
Le mieux est l'ennemi du bien pourrait on dire...
Ici la correction assez simple à comprendre, qui rajoute un flag pour se rappeler que la clé a déjà été installée : https://w1.fi/cgit/hostap/log/ « Prevent installation of an all-zero TK »
[^] # Re: commentaire link
Posté par calandoa . En réponse au journal WPA2 est bronsonisé. Évalué à 10.
« J'espère que le standard est plus ambigu que ça [...]»
Le problème ici n'est pas le standard, mais l'implémentation de wpa_supplicant qui est tout simplement mauvaise. C'est en fait une malheureuse coïncidence que le type l'ai découvert en même tant que son attaque.
Ce qui se passe:
- message 1 <--, le device reçoit des informations pour dériver sa clé X ;
- message 2 -->, il renvoie d'autres informations ;
- message 3 <--, il reçoit d'autres informations et installe à ce moment la clé X, puis il efface le bloc mémoire temporaire où elle était stockée ;
- [...]
- re-message 3 (attaque) <--, il re-installe la clé X, "oubliant" qu'il vient en fait d'effacer ce bloc mémoire.
C'est véritablement un bug. Le développeur en effaçant la mémoire a fait un peu de zèle, et c'est une pratique conseillée dans ce cas pour éviter d'avoir une clé confidentielle inutilement en mémoire qui pourrait être découverte avec une attaque type heartbleed, mais il a oublié ce cas particulier.
Le mieux est l'ennemi du bien pourrait on dire...
Ici la correction assez simple à comprendre, qui rajoute un flag pour se rappeler que la clé a déjà été installée : https://w1.fi/cgit/hostap/log/ « Prevent installation of an all-zero TK »