無線LAN編 第2回 無線LANのセキュリティ
無線LANでは媒体として電波を使います。電波の受信範囲内にあればどんな端末でもデータを受信することができてしまうため,有線LANよりもセキュリティ面で弱くなってしまいます。今回は無線LANのセキュリティについて学びましょう。
http://itpro.nikkeibp.co.jp/article/COLUMN/20080715/310863/
無線LANのセキュリティ
無線LAN(WLAN)では次のようなセキュリティ面の問題があります。
ウォードライビング … セキュリティ対策が緩いAP(アクセスポイント)を探し,そこからインターネットへ接続する。送信元IPアドレスの偽装などが可能になる。APを探すため自動車で移動することからこの名前がある
盗聴 … 電波の受信範囲内ならば電波を受信できてしまうため,容易にフレームの盗聴が可能になる
不正なAP … 正規のAPと同じ設定をしたAPを用意し,WLANクライアントからそちらのAPに通信させる
つまり,「APの利用者が正規である」「誰でも電波を受信できてしまう」「APが正規である」という3つの点で問題が発生していることになります。さらにフレームの改ざんを防ぐことも考えると,これらを防ぐためには,次の2点が必要です。
クライアントとAP間のユーザ認証
フレームの暗号化とメッセージ認証
この3つの観点からWLANのセキュリティを考える必要があります。現在のWLANで使われているセキュリティ対策としては次のものがあります。
対策 セキュリティ
SSIDの隠ぺい ユーザ認証
MACアドレスフィルタリング ユーザ認証
WEP 暗号化
Ciscoによる暫定ソリューション 暗号化と認証
WPA 暗号化と認証
IEEE802.11i(WPA2) 暗号化と認証
まず,上の3つのセキュリティ対策を説明します。
SSIDの隠ぺい
WLANインフラストラクチャモードでは,前回説明したようにSSID(BSS-IDまたはESS-ID)が使われています。SSIDは本来WLANのグループを作るためのものです。このSSIDは,WLANクライアントとAPの双方が同じ値を使っていなければ,クライアントとAP同士が接続できなくなっています。よって,「正しいSSIDをセットする」「正しいSSIDを知っている」ことによる認証が可能と言えるでしょう。SSIDを知らない不正なユーザはAPに接続できませんし,異なるSSIDを持つ不正なAPに対してクライアントは接続しません。
ただし,このSSIDには欠点が3つあります。
1つは,SSIDが「空白」または「ANY」をセットしているクライアントは,任意のAPと接続が可能になってしまう点です。もともとは使われているAPを探して自由に接続できるように,このような仕様になっていたのですが,それがセキュリティ面でぜい弱となってしまっています。これを防ぐためには,SSIDを「空白」または「ANY」に設定したクライアントの接続を禁止する設定をAPにします。
次に2つ目の欠点です。APは,自由に接続可能なAPを探すことができるように,自身のSSIDを通知します。このSSIDの通知を「ビーコン」と呼びます。このビーコンを受信すればAPのSSIDがわかるため,不正なクライアントはそのAPに接続できるようになってしまいます。また,ビーコンを送信していなくても,クライアント側からSSIDの通知を要求できる「プローブ要求」を出すと,それに対してAPはSSIDを通知します。これを防ぐためには,「ビーコン・ブローブ応答の禁止」の設定をAPにします。
上記2つでSSIDを隠ぺいし,不正なユーザにSSIDを知られることを防ぐことができるように思えます。ですが,正規の(同じSSIDがセットされている)クライアントとAP間の通信に使われるフレームのいくつかにはSSIDが入っています。これを受信することでSSIDはわかってしまいます。フレーム暗号化を使用してもSSIDの部分は暗号化されません。これが3つ目の欠点です(図1)。
図1●SSIDの隠ぺい
よって,SSIDの隠ぺいは限定的な機能しかもたない,ぜい弱なセキュリティ対策のしくみであることがわかります。
MACアドレスフィルタリング
MACアドレスフィルタリングは,APにWLANクライアントの持つWLAN用NICのMACアドレスを登録し,登録されたMACアドレスが送信元のフレームのみ受信し,それ以外は破棄する手法です。これにより,登録された正規のWLANクライアントのみがAPを使用できるようになります。
しかし,これにも2点欠点があります。
1つが,登録されたMACアドレスを持つWLAN用NICの盗難,NIC内蔵型の場合はコンピュータそのものの盗難です。盗んだ不正な利用者は,登録されたMACアドレスを使ったフレームの送信ができてしまいます。
また,SSIDの盗聴と同じ欠点もあります。つまり,正規の,登録されたMACアドレスを持つWLANクライアントとAP間の通信を盗聴することにより登録済みのMACアドレスを知ることができます。不正な利用者は自身のNICのMACアドレスを手動で書きかえることにより,正規ユーザになりすますことができることになってしまいます。これが2つ目の欠点です。
WEP
WEP(Wired Equivalent Privacy)はWLANの初期から利用されているフレームの暗号化方式です。WEPはスタティックPSK(Pre-Sheared Keys:事前共通鍵)を使用しています。共通鍵暗号化方式としては,RC4が利用されています。スタティックPSKとは,クライアント,AP双方に暗号化鍵を事前に設定する方式です。また,サイクリック符号化(Cyclic Redundancy Check:CRC)による改ざん防止機能を持っています。
ですが,WEPには問題がいくつもあります。まず,スタティックPSKという問題があります。スタティックPSKではクライアント,APとも手動で暗号化鍵が設定されます。暗号化鍵は長期間同じ鍵を利用することは,暗号化鍵の解読にもつながりセキュリティ的に問題があります。ですが,スタティックPSKでは鍵の変更はAPと,そのAPを利用するすべてのクライアントに手動で再設定を行うことになるため,特にクライアントの台数が多い場合には現実的な手法であるとは言えません。
さらに,WEPによる暗号化そのものセキュリティホールも指定されています。WEPの暗号化鍵は,スタティックPSKによって設定された40ビットまたは104ビットの文字列と,任意のIV(Initial Vector)と呼ばれる24ビットの値をつなげた64ビットまたは128ビットの値です。IVは通信の際にはフレームに暗号化されずに記載されます。つまり,実質40ビットということになり,総当たり攻撃に対して脆弱です。一方で,104ビットならば問題ないように思えますが,この場合IVの長さが問題になります(図2)。
図2●WEPの暗号化手順
IVはフレームごとにランダムな値を使います。これにより同じキーフレームでの暗号化を防ぎ,解読しにくくしています。ですが,IVは24ビットのため,特に高速な無線LANでWEPを利用すると,IVが同じになってしまうフレームがでてきます。同じIVを使ったフレームが複数存在すると,PSKがなくとも,暗号化前のデータを推測できてしまうということが発生します。
またCRCによる改ざん検出にも問題があります。改ざん検出は,データと,その検出値であるCRCを比較することによって行います。データが改ざんされても,CRCの改ざんが難しい場合には改ざんを検出することができますが,CRCの改ざんは比較的容易です。よって,データの改ざんとともにCRCも改ざんしてしまえば,改ざんが検出できなくなってしまいます。
このように,「SSIDの隠ぺい」「MACアドレスフィルタリング」「WEP」によるセキュリティはそれぞれ限定的な機能しか持たない,弱いセキュリティであるといえます。そのため,現在ではWPA以降の新たなセキュリティのしくみが利用されています。
より高度なセキュリティ
上記3つのセキュリティではなく,より高度なセキュリティ機能がWLANには必要となっています。IEEEは2004年にIEEE802.11iと呼ばれるセキュリティ規格を規定しましたが,それまでの間にいくつかのセキュリティ規格が登場しています。
WEPが1997年に規格化され普及しましたが,WEPにはセキュリティ上の問題点がありました。そのため,Ciscoは2001年には独自にWEPの拡張を行っています。これを便宜的に「Ciscoの暫定ソリューション」と呼びます。一方で,Wi-Fiアライアンスが2003年にWPA(Wi-Fi Protected Access)を規定しました。そして2004年にIEEEから正式規格となるIEEE802.11iの規定されました。Wi-FiはWPAをIEEE802.11i規格に合わせたWPA2を同年に規定しています。
「Ciscoの暫定ソリューション」「WPA」「IEEE802.11i(WPA2)」にはいくつかの共通する点があります。それは上記のセキュリティ機能のぜい弱性をどのように防ぐか,という点です。そのため,新たな3つの規格は次のような手法を使っています。
Cisco WPA 802.11i
認証の強化 IEEE802.1X
鍵の問題 鍵の動的配布・変更
暗号化の強化 TKIP TKIP/AES
まずIEEE802.1Xは,レイヤ2レベルでのユーザ認証を行う規格です。IEEE802.1Xでは,EAP(Extensible Authentication Protocol)と呼ばれるPPPを拡張したプロトコルを使用します。クライアントはIEEE802.1X用認証ソフト(サプリカント:Supplicant)を使い,IEEE802.1X対応のAPやスイッチングハブ(オーセンティケータ:Authenticater)に接続をし,認証を行います。認証用のデータはRADIUS(Remote Authentication Dial In User Service)サーバなどが保有しています(図3)。
図3 IEEE802.1Xによる認証
IEEE802.1Xは認証だけでなく,暗号化に使用する共通鍵を渡すこともできます。また,ユーザ数が少ない場合などはRADIUSサーバを使用せず,APがその機能を持つ場合もあります。
鍵の動的変更は,暗号化の強化であるTKIPの機能の1つです。TKIP(Temporal Key Integrity Protocol)は,WEPと同じ暗号化方式を利用していますが,WEPの弱点を大きく補強し,セキュリティを高めています。
鍵の動的変更 … 一定時間ごとに鍵を変更できる
IVの拡張 … IVを倍の48ビットまで拡張し,同じIVを使用する可能性を減らす
鍵長の延長 … 鍵の長さを拡張している
また,IEEE802.11i(WPA2)では,TKIPのRC4だけでなく,より強力な暗号化方式であるAESを利用可能にし,さらにセキュリティを強化しています。
さらに,WEPではCRCであった改ざん防止を,WPAではMIC(Message Integrity Check),IEEE802.11iではCOMP(Couter-mode with CBC MAC Protocol)を使って,改ざん防止機能を高めています。
<<前ページ 1 2
[2009/01/20]