無線LANで使う認証プロトコル「EAP」の“10種類”の違いIEEE 802.1XとEAPを学ぶ【後編】

ネットワークへの接続を認証する仕組みとしてEAPは重要な役割を果たしている。EAPはさまざまな種類があり、それぞれ仕組みが異なる。代表的なEAP“10種”を解説する。

2024年10月29日 05時00分 公開
[Jennifer EnglishTechTarget]

 有線LANおよび無線LANに接続するクライアントデバイスを認証する方法として、認証規格「IEEE802.1X」がある。IEEE802.1Xは認証用のプロトコルとして「EAP」(拡張認証プロトコル)を使用している。EAPは複数の異なる方式があり、それぞれ認証方法が異なる。代表的なEAP“10種”の特徴を紹介する。

「EAP」“10種類”の違いとは? 各方式の特徴は

EAP-MD5(EAP Message Digest 5)

 「EAP-MD5」(EAP Message Digest 5)は、インターネット標準化団体「Internet Engineering Task Force」(IETF)が仕様を策定した方式だ。IETFはさまざまなEAPの仕様をインターネット技術の仕様を記した文書である「RFC」(Request for Comments)として策定しており、EAP-MD5は「RFC 2284」として公開されている。

 EAP-MD5では、認証サーバがクライアントに「チャレンジ」と呼ばれるランダムなデータを送信する。クライアントデバイスはチャレンジとパスワードをつなげた文字列をハッシュ化(不規則な文字列へ置換)して認証サーバに送信する。ハッシュ化には「MD5」という関数を用いる。

 認証サーバも、クライアントデバイスと同様に、チャレンジとクライアントデバイスのパスワードをつなげた文字列をハッシュ化する。その後、クライアントデバイスから送信されたハッシュ化された文字列と比較し、一致する場合にのみ通信を許可する。

 企業や研究者がEAP-MD5の脆弱(ぜいじゃく)性を見つけており、現代では一般的にセキュリティの観点から推奨していない。MicrosoftはクライアントOS「Windows Vista」から、EAP-MD5を非推奨とした。EAP-MD5を使うと、以下のような攻撃によって認証情報を奪われたり、不正に認証されたりするリスクがある。

  • 通信経路での盗聴
  • 辞書に載っている単語をパスワード推測に利用する「辞書攻撃」
  • 攻撃者のデバイスがクライアントデバイスまたは認証サーバになりすます

LEAP(Lightweight EAP)

 LEAP(Lightweight EAP)はネットワーク機器ベンダーCisco Systemsが開発した方式だ。利用にはCisco Systemsの機器が必要となる。

 EAP-MD5と同様に、LEAPはチャレンジとパスワードをつなげた文字列をハッシュ化してクライアントデバイスを認証する。認証が成功すると無線LAN用のセキュリティプロトコル「WEP」(Wired Equivalent Privacy)で通信を保護する。

 企業や研究者はWEPの脆弱性を発見しており、LEAPをセキュリティの観点から推奨していない。

PEAP(Protected EAP)

 「PEAP」(Protected EAP)はCisco SystemsとMicrosoft、セキュリティベンダーのRSA Securityが開発した方式だ。クライアントデバイスと認証サーバが通信プロトコルの「TLS」(Transport Layer Security)によるトンネル(暗号化された専用の通信路)を構築してからEAPに基づいた認証プロセスを開始するため、認証情報が盗聴されるリスクを軽減できる

 PEAPにはバリエーションがあり、企業は主に「PEAPv0」と「PEAPv1」を利用できる。Microsoft製品がPEAPv0を採用しているのに対して、Cisco Systems製品はPEAPv1を採用している。PEAPv0とPEAPv1に相互接続性はない。クライアントデバイスと認証サーバは同じ種類のPEAPを使用する必要がある。

EAP-SIM(EAP-Subscriber Identity Module)

 「EAP-SIM」(EAP-Subscriber Identity Module)はモバイルネットワーク規格の標準化団体である3GPP(3rd Generation Partnership Project)が開発した方式で、RFCは「RFC 4186」だ。世界各国の携帯電話が互いに通話や通信するために使用する通信規格「GSM」(Global System for Mobile Communications)が認証の仕組みとして採用している。

 SIMカードによってクライアントデバイスを認証する点がEAP-SIMの特徴の一つ。認証時には移動通信事業者の所有する認証サーバにアクセスする必要がある。

 EAP-SIMは、クライアントデバイスが「2G」(第2世代移動通信システム)を利用する際の認証方式として使われていた。現在ではスマートフォンなどのSIMカードを搭載したクライアントデバイスで、異なる通信事業者のネットワークにローミングした時や、公衆無線LANにアクセスする時の認証にEAP-SIMを使うことがある。

EAP-AKA(EAP-Authentication and Key Agreement)

 「EAP-AKA」(EAP-Authentication and Key Agreement)は3GPPが開発した、SIMカードによってGSM方式のモバイルネットワークに接続するクライアントデバイスを認証する方式。RFCは「RFC 4187」だ。

 移動通信事業者は「3G」(第3世代移動通信システム)以降のモバイルネットワークにて、SIMカードを搭載したクライアントデバイスとネットワークを相互認証するためにEAP-AKAを利用している。EAP-AKAをEAP-SIMと比較すると、SIMカードによって認証する点は共通しているが、より強力な暗号化アルゴリズムと安全な鍵管理機能を利用できる。

 3GPPはGSM方式のモバイルネットワークに採用するEAPを改良してきた。3GではEAP-AKAだったが、「5G」(第5世代移動通信システム)ではEAP-AKAを改良した「EAP-AKA'」を導入した。 EAP-AKA'はEAP-AKAから、暗号鍵の生成方法やハッシュ化アルゴリズムをより強力にして安全性を高めている。

 3GPPは5Gで「前方秘匿性」(PFS:Perfect Forward Secrecy)の実現を検討している。前方秘匿性とは、侵害が発生した時点より過去の情報を守る考え方だ。EAP-AKA'に前方秘匿性を実現する機能を盛り込んだ方式としては「EMU-AKA-PFS」がある。EMU-AKA-PFSではセッション(接続の単位)のたびに暗号鍵を新しく生成するため、仮に暗号鍵が流出しても過去の通信を解読できないようにできる可能性がある。

EAP-TLS(EAP-Transport Layer Security)

 「EAP-TLS」(EAP-Transport Layer Security)は、「RFC 5216」で定義されている。クライアントデバイスと認証サーバが、通信経路を暗号化プロトコルのTLSで保護しながら、電子証明書で相互に認証する。電子証明書は、公開鍵を所有していることを証明するものだ。ほとんどの企業は電子証明書を、証明書の発行と維持に責任を持つ第三者機関である認証局(CA)から取得する。

 EAP-TLSは、EPAの中では特に安全な方式だ。ただし認証のためには企業やエンドユーザーが電子証明書を第三者機関から取得する必要があり、通常は証明書発行費用を支払わなければならない。その分、EAP-TLSはコストが高くなりやすいため、これらの費用に見合うだけのセキュリティ水準が求められるネットワークに適している。

EAP-MS-CHAPv2(EAP-Microsoft Challenge Handshake Authentication Protocol)

 「EAP-MS-CHAPv2」(EAP-Microsoft Challenge Handshake Authentication Protocol)は、Microsoftが認証プロトコル「CHAP」を自社製品向けにカスタマイズした「MS-CHAPv2」(Microsoft CHAP version 2)の仕組みを内包している。

 MSCHAP v2は認証にクライアントデバイスのユーザー名とパスワードを使用するプロトコルであり、EAPにカプセル化(あるプロトコルのパケットを、他のプロトコルのパケットとして送信する処理)して利用する。EAP-MS-CHAPv2は、Microsoftの製品やサービスで利用できる

 企業や研究者がEAP-MS-CHAPv2について複数の脆弱性を指摘している。セキュリティの専門家はより安全な種類のEAPへの移行を推奨している。

EAP-TTLS

 「RFC 5281」で定義された「EAP-TTLS」は、セキュリティベンダーのFunk SoftwareとセキュリティベンダーCerticom(2009年にBlackBerryが買収)が開発した。EAP-TTLSはクライアントデバイスと認証サーバ間の通信をTLSで暗号化してから認証を開始する。

 TLSでトンネルを構築するEAPの方式としてはEAP-TLSもある。EAP-TLSは認証に電子証明書を用いるが、EAP-TTLSではクライアントデバイスに電子証明書の導入は不要で、認証サーバはユーザー名とパスワードでクライアントデバイスを認証する。

 EAP-TTLSはクライアントデバイスに電子証明書を必要としないため、安全性の面ではEAP-TLSよりもリスクが高いという見方もあるが、EAP-TLSよりも安価に導入できる可能性がある。EAP-TTLSにおいてはユーザー名とパスワードのデータはTLSで暗号化された通信で交換できるため、盗聴のリスクを軽減できる。

 EAP-TTLSは、クライアントデバイスに電子証明書を導入しにくいLANに適している。EAP-TTLSはPEAPの仕組みに似ているが、TLSによるトンネルを確立した後にクライアントデバイスを認証する手順が異なる。PEAPはその手順が決まっているのに対してEAP-TTLSは他のプロトコルをカプセル化して利用できる。そのため、EAP-TTLSは複数の認証方式を利用することができる。

EAP-FAST(EAP-Flexible Authentication via Secure Tunneling)

 Cisco Systemsが、LEAPの代替として「EAP-FAST」(EAP-Flexible Authentication via Secure Tunneling)を開発して「RFC 5422」として仕様を公開した。EAP-TLSやEAP-TTLSと同様に、クライアントデバイスと認証サーバ間の通信をTLSで保護する。

 EAP-FASTでは、クライアントデバイスと認証サーバの認証に電子証明書を利用することができるが、設定の切り替えによって電子証明書を用いない認証方法の選択もできる。電子証明書を利用しない場合は、クライアントデバイスと認証サーバが、Cisco Systemsが独自に開発した資格情報「PAC」(Protected Access Credential)を事前に取得しておく必要がある。

 EAP-FASTは、電子証明書による署名検証で速度が著しく低下するような、処理能力の低いクライアントデバイスに適している。EAP-FASTはCisco Systemsが開発した認証プロトコルではあるが、Windows搭載のクライアントデバイスやApple製のクライアントデバイスで使用できる。

EAP-GTC(EAP-Generic Token Card)

 「EAP-GTC」(EAP-Generic Token Card)は、RFC 2284で定義されたEAPの仕様のうち、IDやパスワードの代わりに、「トークンカード」と呼ばれる認証用のハードウェアまたはソフトウェアを利用して認証する方式を指す。トークンカードによる認証方法はさまざまな種類があり得るが、EAP-GTCではワンタイムパスワードを利用する。

 ワンタイムパスワードを使えば、パスワードの使い回しや不適切なパスワード管理などによるパスワードの漏えいのリスクを軽減できる。

EAPの互換性を確認する

 ネットワーク担当者は、自社の使用する無線LAN製品がどのタイプのEAPをサポートしているのかを確認すべきだ。さまざまなベンダーの無線LAN製品を使用しているなら、クライアントデバイスと互換性のあるEAPを使用しているかどうかを確認する必要がある。

 EAPを導入した後は、社内でパスワードを推測されにくいように適切なルールで運用する必要がある。EAPを使用時にパスワードではなく電子証明書で認証するのであれば、電子証明書を常に管理し、更新する必要がある。

TechTarget発 先取りITトレンド

米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

ITmedia マーケティング新着記事

news103.jpg

なぜ料理の失敗写真がパッケージに? クノールが展開する「ジレニアル世代」向けキャンペーンの真意
調味料ブランドのKnorr(クノール)は季節限定のホリデーマーケティングキャンペーン「#E...

news160.jpg

業界トップランナーが語る「イベントDX」 リアルもオンラインも、もっと変われる
コロナ禍を経て、イベントの在り方は大きく変わった。データを駆使してイベントの体験価...

news210.png

SEOを強化するサイトの9割超が表示速度を重視 で、対策にいくら投資している?
Reproが「Webサイトの表示速度改善についての実態調査 2024」レポートを公開。表示速度改...