WPA-EAPとMSCHAP-v2を使用してwpa_supplicant.confでパスワードを隠す

WPA-EAPとMSCHAP-v2を使用してwpa_supplicant.confでパスワードを隠す

私のwpa_supplicant.conf外観は次のとおりです。

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"
}

WPA-EAPとMSCHAP-v2の特定の組み合わせを使用して、この設定ファイルにプレーンテキストパスワードを含めない方法はありますか?

変更ログが表示されます。これを主張する効果がある(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

いくつかの注意:

1回答者は、ハッシュされたパスワードを使用することは、ハッシュがパスワードになることを意味すると主張します。これは技術的に正確ですが、少なくともハッシュWi-Fiのみこれは、アクセスを許可する共有パスワードが漏洩するのに比べて大幅に改善されました。多くの種類提供する。

答え1

端末を開き、次のように入力します。

wpa_passphrase YOUR_SSID YOUR_PASSWORD

出力例:

network={
    ssid="YOUR_SSID"
    #psk="YOUR_PASSWORD"
    psk=6a24edf1592aec4465271b7dcd204601b6e78df3186ce1a62a31f40ae9630702
}

ファイルを開き、wpa_supplicant.conf次の行を追加します。

psk=6a24edf1592aec4465271b7dcd204601b6e78df3186ce1a62a31f40ae9630702

答え2

次のように一意のNtPasswordHash(NTLMパスワードハッシュとも呼ばれる)生成できます。

echo -n plaintext_password_here | iconv -t utf16le | openssl dgst -md4 -provider legacy

wpa_supplicant.conf ファイルに "hash:" プレフィックスを追加します。つまり、

password=hash:6602f435f01b9173889a8d3b9bdcfd0b

macOSでは、iconvコードは次のようになります。UTF-16LE

echo -n plaintext_password_here | iconv -t UTF-16LE | openssl dgst -md4 -provider legacy

多くのセキュリティが得られないことに注意してください。攻撃者がハッシュのあるファイルを見つけると、コンピュータのようにネットワークに簡単にアクセスできるため、パスワードハッシュはまったく役に立ちません。パスワードが他の場所で使用される場合、攻撃者は元のパスワードを見つけるために無差別代入を使用する必要があります(つまり、最も可能性の高いパスワードを試して、一致するパスワードが見つかるまでハッシュを計算します)。平均PCでは、毎秒約10億のハッシュを計算できるため、これは大きな障害ではなく、ハッシュがソルト処理されないため、攻撃者が事前に計算されたテーブルを簡単に使用できます。 NTはパスワードハッシュアルゴリズムとしては本当に悪いです。

関連情報