Ma wpa_supplicant.conf
ressemble à ça:
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 prétendre que cela 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:
1 Cet anser prétend 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 .
Vous pouvez générer le NtPasswordHash
(alias hachage du mot de passe NTLM) vous-même comme suit:
echo -n plaintext_password_here | iconv -t utf16le | openssl md4
Préfixez-le avec "hachage:" dans le fichier wpa_supplicant.conf, c'est-à-dire.
password=hash:6602f435f01b9173889a8d3b9bdcfd0b
Sur macOS, le code iconv est UTF-16LE
echo -n plaintext_password_here | iconv -t UTF-16LE | openssl md4
Notez que vous ne gagnez pas beaucoup de sécurité. Si un attaquant trouve le fichier avec le hachage, il peut rejoindre le réseau de manière triviale (de la même manière que votre ordinateur), donc avoir haché le mot de passe n'aide pas du tout. Si le mot de passe est utilisé ailleurs, l'attaquant devrait utiliser la force brute pour trouver le mot de passe d'origine (c'est-à-dire essayer les mots de passe les plus probables et calculer leur hachage jusqu'à ce qu'ils trouvent une correspondance). Comme vous pouvez calculer environ 1 milliard de hachages par seconde sur un PC ordinaire, ce n'est pas un gros obstacle, et les attaquants peuvent facilement utiliser des tables précalculées car le hachage n'est pas salé. NT est vraiment horrible comme algorithme de hachage de mot de passe.
Terminal ouvert et tapez:
wpa_passphrase YOUR_SSID YOUR_PASSWORD
Exemple de sortie:
network={
ssid="YOUR_SSID"
#psk="YOUR_PASSWORD"
psk=6a24edf1592aec4465271b7dcd204601b6e78df3186ce1a62a31f40ae9630702
}
Ouvrez le wpa_supplicant.conf
fichier et ajoutez la ligne suivante:
psk=6a24edf1592aec4465271b7dcd204601b6e78df3186ce1a62a31f40ae9630702