SIMカードを使った強固な認証

 次にサービス・アプリケーション・レベルの認証であるが,SIM(subscriber identity module)カードの扱いなど,まだ議論がまとまっていない部分が多い。

 図3に示したのは3GPPに基づきHTTP Digest AKA(authentication and key agreement)を行う場合の基本的なフローである。ユーザーと網との間では契約時に長期共有鍵が設定され,端末内のUIM(user identity module)カード(3GでのSIM)と,網のHSSとに保管されている。

図3●SIPレジストレーションによるサービス・アクセス・レベルの認証手順
図3●SIPレジストレーションによるサービス・アクセス・レベルの認証手順
3GPPのHTTP Digest AKAを使ってIPsecのトンネルを作り,網と端末が相互認証する例を示した。
[画像のクリックで拡大表示]

 端末は最初にSIPレジストレーション要求を出す。これはS-CSCFを経由してHSSに渡され,HSSは自分が持つ長期共有鍵と,自分が選んだ乱数とからIPsec用の鍵,AKAの認証で期待されるレスポンスなどを生成する。鍵とレスポンスはP-CSCF,S-CSCFという二つのSIPサーバーに渡され,乱数は端末に送付される。その乱数と端末内の長期共有鍵とを用いて端末はP-CSCFとの間にIPsecトンネルを確立する。そのトンネルを用いて端末はAKAのレスポンスをS-CSCFに送付し,これがHSSが計算したものと一致すればS-CSCFは端末の登録を行う。

 SIMなどに対応していない既存端末やパソコンなどの端末からの通信の扱いは今後の検討課題だが,このように強固なユーザー認証を基本機能として持っていることはNGNの大きな強みである。

 まずNGNは正当なユーザーに対して網の利用権を適切に付与し,それに違反したユーザーなどの追跡を行うことが出来るようになっている。ユーザーの権限に基づいてパケットのマーキングを行ったり,不正なアクセスをブロックしたりという作業は主にセッション・ボーダー・コントローラーにより行われるが,これは以前(本連載第19,20回の「相互接続機能」)に詳細に述べたのでここでは割愛する。

 次に,このような強固なユーザー認証はほかのサービスの基盤になり得る。例えば3GPPではこうした網による認証を上位アプリケーションと連携させる方法が議論されており,NGNでの今後の進展が期待される。ただしこの連携では,通信事業者は顧客の物理的な位置や,移動体通信の場合にはその移動経路や速度までをも把握しており,顧客のプライバシーに対して十分に配慮するよう対策を取る必要がある。

激増の恐れあるSPIT

 ここまで述べた認証などは必要最低限として既に標準化された,または標準化がほぼ確定している機能である。実際のNGNではサービスの状況に合わせて,さらに様々な機能を追加する必要がある。こうした機能の例として,現在問題となりつつあるSPIT対策とピア・ツー・ピア(P2P)対策について見てみよう。

 SPITでは,自動音声でアダルト・サイトの案内などを行うものが多い。国内では2004年にソフトバンクのBBフォンで発見されたものが最初と言われており,その後他社でも見つかっている。現在の大容量回線を使えば1台のパソコンで膨大な数のSPITを生成でき,また国際間で行うことも容易なため,今後激増する恐れが指摘されETSIやIETFでの議論が始まっている。

 これを防御する方法としては音声の内容を解析して遮断するコンテンツ・フィルタリング,不適当な番号からの着信を禁止するブラック・リスト,許可されたユーザーのみ着信を許可するホワイト・リストなど,SPAMメール対策に倣って様々な方法が提案されている。だが,例えばコンテンツ・フィルタリングを行うには音声認識技術はまだ十分ではない上,着信番号履歴を残すことだけが目的の「ワン切り」には無力である。ブラックリスト方式は使い捨てIDに弱い,ホワイトリスト方式は登録処理が面倒,など決定打がない状況である。また法律で禁止しても国外からのSPITには効果がない。

複合手段による防御を提案

 この防御方法としてNECがプロトタイプを発表している複合的手段を前ページの図4に示す。この方式では,各種の方法を用いて発信者を点数付けした上で,あるしきい値を超えた発信者には自動音声かどうかを判断するためのチューリング・テストを行う。発信者が人間の場合,受信者が話しかけている間は通常沈黙するため,発信者と受信者の発する音量が共に一定以上の大きさの場合は自動音声の疑いが高いと判断できる。これを利用して点数付けを行い,他の評価と合わせて最終判定することで自動音声を見分け,SPITを防止できる。

図4●SPIT防止アルゴリズムのフロー
図4●SPIT防止アルゴリズムのフロー
まず各種のアルゴリズムを使ってスコアを付ける。一定のしきい値を超えた場合,発信者が人間ならば,相手がしゃべっているときには黙るという性質を使ってチューリング・テストを行う。
[画像のクリックで拡大表示]

 写真1はこの設定と結果表示を行うプロトタイプの画面である。右半分は,点数付けに用いるアルゴリズムとしきい値の設定である。予備的なアルゴリズム3個およびチューリング・テストが指定されている。左半分はテスト結果である。発信者の音量とそれを平滑化したものが左下のグラフで,その大きさなどを見てそのセッションに対する総合的な点数付けを行い自動音声と判定している。

写真1●図4のアルゴリズムを使ってSPITを防止するプロトタイプの画面
写真1●図4のアルゴリズムを使ってSPITを防止するプロトタイプの画面
チューリング・テストの結果,自動音声と判定している。
[画像のクリックで拡大表示]

暗号化に対応したトラフィック判定

 一部のユーザーが帯域を占有してほかのユーザーの使い勝手が大きく低下することは,ベストエフォート型のトラフィックであってもセキュリティ的には好ましくない。例えばファイル交換向けP2Pアプリケーションが大きな問題となったが,こうした事例は今後も新たなアプリケーションの出現と共に起きる可能性が高い。

 この対策の一つはアプリケーションごとに帯域を制限することであるが,実際には実行が困難である。通信の秘密の確保という問題があるため,ユーザーのパケットの中身を解析することはユーザーの許可なしにはできない。また,通信に使うポート番号は必ずしも一定しないので,どのアプリケーションが問題なのか解析すること自体困難である。アプリケーションがデータの内容を暗号化してしまうと識別はさらに困難になる。

 これを解決する方法として,NECはパケット・フローやインタラクションの特徴を見る方法を提案している。送受信アドレス,送受信ポート,プロトコル番号が一致する一連のパケットを「フロー」,2台のホストがそれぞれ個別のポート番号を用いて交換するパケット群を「インタラクション」と呼ぶことにすると,これらにはアプリケーションごとに特徴がある。例えばフローをパケット到着間隔とパケット・サイズで分類すると図5に示すようにアプリケーションごとに分布の特徴が顕著に現れる。またインタラクションを,パケットの順序とパケット・サイズを用いて分類すると,やはりアプリケーションに固有のパターンが現れる。従って図6に示すように,トラフィックをフローごと,インタラクションごとに分けて特徴を分析すると,暗号化されたものも含めてアプリケーションの識別が可能となる。これは今後,プライバシー保護などに配慮しつつ網の可用性を保つ上で重要な技術になるだろう。

図5●アプリケーションごとのフロー特性
図5●アプリケーションごとのフロー特性
音声は小さなサイズのパケットがほぼ等間隔で到着し,大容量データ通信は大きなパケットがまばらに到着するといった特徴がある。
[画像のクリックで拡大表示]

図6●アプリケーション種別判定方法
図6●アプリケーション種別判定方法
フローとインタラクションの特徴を分析してアプリケーションを判定する。
[画像のクリックで拡大表示]

 本稿ではNGNのセキュリティ技術について,標準化されたもの,および今後必要になるであろうものを概観した。これらを使いコストとのバランスを考えつつセキュアな網を構築することがNGNでは重要となる。

江川 尚志(えがわ・たかし)
NECシステムプラットフォーム研究所 主任研究員
1991年NEC入社。セルフ・ヒーリング,アクティブ・ネットワークなどの研究に従事。現在ITU-TにてY.2701(NGNセキュリティ要求条件)勧告,NGN ID管理セキュリティ勧告などのエディタを務める。