Mon wpa_supplicant.conf
ressemble à ceci:
network={
ssid="Some name"
scan_ssid=1
key_mgmt=WPA-EAP
eap=PEAP
identity="my-user-id"
password="(clear text password here)"
ca_cert="/usr/share/ca-certificates/mozilla/GeoTrust_Global_CA.crt"
phase2="auth=MSCHAPV2"
}
Avec cette combinaison spécifique de WPA-EAP et MSCHAP-v2, existe-t-il un moyen de ne pas inclure mon mot de passe en clair dans ce fichier de configuration?
Le ChangeLog semble affirmer que c'est faisable (depuis 2005!):
* added support for storing EAP user password as NtPasswordHash instead
of plaintext password when using MSCHAP or MSCHAPv2 for
authentication (hash:<16-octet hex value>); added nt_password_hash
tool for hashing password to generate NtPasswordHash
Quelques notes:
L'utilisation d'un mot de passe différent n'est pas une option, car je n'ai aucun contrôle sur ce réseau (il s'agit d'un réseau d'entreprise et un seul nom d'utilisateur / mot de passe est utilisé pour accéder à tous les services, y compris la connexion au Wifi).
Un mot sur les doublons:
- 40: use-wpa-supplicant-without-plain-text-passwords concerne les clés pré-partagées
- 74500: wpa-supplicant-store-password-as-hash-wpa-eap-with-phase2-auth-pap utilise PAP comme authentification de phase 2 (pas MSCHAP-v2).
- 85757: store-password-as-hash-in-wpa-supplicant-conf est très similaire à cette question, mais a été (incorrectement) fermé en tant que doublon de 74500 ; Malheureusement, les réponses données au prétendu doublon sont spécifiques au PAP et ne s'appliquent pas au cas MSCHAP-v2. 85757 lui-même a une réponse affirmant qu'il est essentiellement impossible quel que soit le protocole, mais la justification n'est pas valable 1
1 Cet anser affirme que l'utilisation d'un mot de passe haché signifie que le hachage devient le mot de passe. C'est techniquement vrai, mais au moins le hachage est un mot de passe uniquement en wifi , ce qui représente une avancée significative par rapport à la fuite d'un mot de passe partagé donnant accès à plusieurs services.
-d
trace de wpa_supplicant, je reçois différentsEAP-PEAP: Derived Session-Id
,EAP-PEAP: Decrypted Phase 2 EAP
,MSCHAPV2: auth_challenge - hexdump(len=16):
et lesMSCHAPV2: password hash - hexdump(len=...)
sorties, et enfin deux messages disantEAP-TLV: TLV Result - Failure
etEAPOL authentication completed - result=FAILURE