セキュリティのプロフェッショナルではないので誤りが多く含まれていると思います。
指摘していただけると大変助かります。
PAPとは…
認証方式であり、クライアントはサーバに対してユーザー名とパスワードを"平文"で提示して認証する。
単体での利用は非推奨(暗号化されずにそのまま経路上に流れるので)
CHAPとは…
認証方式であり、サーバはクライアントに対してチャレンジを送信し、クライアントはパスワードとチャレンジを組み合わせて"ハッシュ化"して提示して認証する。
単体での利用は非推奨(ハッシュが経路上に流れ、予測攻撃される可能性があるため)
EAPとは…
Extensible Authentication Protocol
認証するためのプロトコル(取り決め)であり、具体的な認証方式は様々存在する。
それらの認証方式を下記に記す。
EAP-MSCHAPv2とは…
EAPに則りMicrosoftが定義した認証方式であり、サーバはクライアントに対してチャレンジを送信し、クライアントはパスワードとチャレンジを組み合わせて"ハッシュ化"して提示して認証する。
MSCHAPv1と比べ、クライアントからサーバを認証する双方向認証に対応し、送受信で異なる暗号鍵を用いるよう改良された。
基本的にMSCHAPv2単体では利用せず、後述のEAP-PEAPをPhase1として利用する。
2012年に脆弱性が発見されており、以降使用するべきではないとされている。
Credential Guardでブロックされたのはこいつ。
EAP-TLSとは…
EAPに則った認証方式であり、サーバとクライアント同士で証明書を発行し、認証する。
俗に言う「クライアント証明書認証方式」を指す。
TLS1.2以前では証明書情報(Serial NumberやIssuer、Subjectなど)が平文でやり取りされるため、後述のEAP-TTLSまたはEAP-PEAPと組み合わせるのがマスト。
TLS1.3になるとハンドシェイクメッセージが暗号化されるため、証明書情報も安全になるが、NPSでは現在サポートされていない。
EAP-TTLSとは…
EAPに則った認証方式であり、Phase 1でTLSトンネルを確立し、その後Phase 2で認証を行う。
Windowsでは上述のPAP、CHAPやEAP-MSCHAPv2、EAP-TLSなどをPhase 2で利用できる。
NPSでは現在サポートされていない。
EAP-PEAP(または単にPEAP)とは…
EAPに則りMicrosoftが定義した認証方法であり、Phase 1でTLSトンネルを確立し、その後Phase 2で認証を行う。
Windowsでは上述のEAP-MSCHAPv2、EAP-TLSをPhase 2で利用できる。
MSCHAPv2をPEAPで利用する場合、PEAP-MSCHAPv2と表記されたりする。また、PEAP-MSCHAPv2を単にPEAPと表現している非常に良くない記述や資料も散見されている。
2023年にリモートコード実行の脆弱性が見つかっており、修正パッチが配信されている。
Phase 1のEAP-TTLSおよびEAP-PEAPは、いずれも経路の保護をするためのトンネルとなり、Phase 2のEAP-MSCHAPv2/EAP-TLS等でユーザーを認証する
Q.EAP-TTLSとEAP-PEAPってどう違うんだい?
A. トンネルを使うことは同じだけど色々違うっぽい
- EAP-TTLS
- Func SoftwareとCerticomによって開発された
- Phase2ではEAP以外も使える(PAPなど)
- オープンな標準に基づき、幅広いネットワーク機器やソフトウェアで対応
- でもNPSは対応してない
- EAP-PEAP
- MicrosoftとCisco Systemsによって開発された
- Phase2では特定のEAPのみ利用可能
- 特にMicrosoft Windows環境で広く利用、対応している
- 2023年にリモートコード実行の脆弱性が見つかっており、パッチによる修正済み
セキュリティのプロフェッショナルではないので誤りが多く含まれていると思います。
指摘していただけると大変助かります。