アドホックネットワークにおけるセキュリティについての考察 ユビキタスネットワークシステム研究室 N11 101 山添優紀 2015.2.12 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
背景 l アドホックネットワーク 無線基地局を必要とせず端末のみで構築できる無線ネットワーク 直接電波が届かない端末間も他の端末がデータを中継することで 通信が可能 A C B D 2 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
アドホックルーティングプロトコルの種類 Ø ルーティングプロトコル l 端末が移動しトポロジーが変化することを考慮した様々なルーティングプロトコルが提案されている Ø アドホックルーティングプロトコルは以下の二つに分類できる Reactive 型 AODV DYMO Proactive 型 OLSR TBRPF 3 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
ルーティングプロトコル 2 Reactive 型 AODV DYMO パケットを送信する際に経路を探索する方式 Proactive 型 OLSR TBRPF パケットのやりとりの有無に関わらず定期的に経路を探索する方式 4 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
OLSR の概要 Ø OLSR とは l Optimized Link State Routing Protocol l Proactive 型のルーティングプロトコル 通信が行われなくても経路制御メッセージを定期的に送受信しあいルーティングテーブルを作る 各端末が隣接情報をフラッディングしあうことにより ネットワーク全体の構成を把握し 最適な経路を計算する 5 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
OLSR の制御メッセージ Ø OLSR の制御メッセージ HELLO メッセージ TC(Topology Control) メッセージ 6 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
OLSR (HELLO メッセージ ) A B 各端末が自分の IP アドレスを周りの端末に ブロードキャストする F C D E G 7 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
ルーティングの仕組み (HELLO) A B * 隣接端末探索 HELLO メッセージ B,C A の隣接端末情報 C の隣接端末情報 A,B,D,E D C 私は 192.168.10.4 です B,G F の隣接端末情報 E F G 8 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
ルーティングの仕組み (TC) C の隣接端末情報 A,B,D,E 全ての端末に隣接情報を流す D A C B * 隣接情報をフラッディング ネットワーク全体を把握 TCメッセージ F G E 9 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
OLSR A C B F ネットワーク全体を把握する TC D E G C のルーティングテーブル作成 隣接端末情報 10 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
アドホックネットワークの欠点 l 不正端末による盗聴 傍受やデータ改 ざん セキュリティ攻撃の可能性がある 傍受 11 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
目的 l アドホックネットワークの セキュリティ対策の必要性を明らかにする l セキュリティ攻撃によりネットワークが どのような影響を受けるか明らかにする 12 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
攻撃方法 1 OLSR を用いてネットワーク環境を作る 2 悪玉ノード ( 端末 ) を追加 3 HELLO,TC を盗み見 IP アドレスを把握 4 HELLO,TCから得られたIPアドレスを使いあたかも全ての端末が悪玉ノードと隣接していると錯覚させる HELLO,TCを作成しネットワークに流す 13 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
理論上の結果 HELLO,TC A 1 OLSR を用いてネットワーク環境を作る B F D C E G 2 悪玉ノード ( 端末 ) を追加 14 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
理論上の結果 隣接端末情報 偽 HELLO 送信 D A C B E F G 私は全ての端末と C のルーティングテーブル 隣接関係にある 書き換わったルーティングテーブル 15 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発 Ø 開発 l 今回 HELLO 及び TC メッセージのパケットの中身を盗み見ることのできるプログラムを開発した ( 以下 OLSR_Analizer) Ø OLSR_Analizer 開発のための手順 l OLSR のプロトコルや技術を確認 学ぶために RFC を読む l OLSRv2 のパケットフォーマットの解読 l TLV の解読 l これらを解読するための資料がほぼ全て英語 16 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発のために (RFC) Ø RFC とは (Request For Comments) の略 IETF( インターネットで利用される技術の標準化を推進する組織 ) が正式に発行する文書 例 )IP(RFC791),TCP(RFC793),HTTP(RFC2616) インターネットで利用されるプロトコルが通し番号をつけて 公開されている 今回はパケットフォーマット OLSR の仕様が書かれた RFC 6130 Neighborhood Discovery Protocol RFC 5444 Packet/Message Format などを参考にした RFC 7181 The Optimized Link State Routing Protocol Version 2 17 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発にあたって Ø OLSR_Analizer 開発のための手順 l OLSR のプロトコルや技術を確認 学ぶために RFC を読む l OLSRv2 のパケットフォーマットの解読 l TLV の解読 l これらを解読するための資料がほぼ全て英語 18 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発のために ( パケットフォーマット ) OLSRv1 パケットフォーマット OLSRv2 パケットフォーマット TLV パケットヘッダ メッセージヘッダアドレスブロック packet header message header address block と大きく別れており 長さが固定ではなくそれぞれTLVを用いることにより新たな情報を追加しやすくしている 19 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発にあたって Ø OLSR_Analizer 開発のための手順 l OLSR のプロトコルや技術を確認 学ぶために RFC を読む l OLSRv2 のパケットフォーマットの解読 l TLV の解読 l これらを解読するための資料がほぼ全て英語 20 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発のために (TLV) Ø TLV とは (Type,Length,Value) 普通のパケットフォーマットとは異なり フィールド値が固定ではなく長さも内容もそれぞれの Type の宣言により変化する Ø TLV タイプの種類の例 VALIDITY_TYPE メッセージの受信後そのメッセージの内容が 有効とされる時間 VALUE は保持時間を表す INTERVAL_TIME HELLO,TC メッセージを送信する間隔を表す 21 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発 Ø OLSR_Analizer を開発した Ø OLSR_Analizer とは HELLO TC のパケットを受信する そこから ヘッダ TLV などのフラグを解析 表示 22 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
実験 Ø 環境 4 台のノートパソコンを使用 OS: すべて ubuntu OLSR によりネットワークを構築する PC:3 台 OLSR_Analizer 実装 PC:1 台 23 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
実験結果 Ø OLSR_Analizer起動 24 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
実験結果 Ø パケット解説 *RFC 5444 より解釈したもの * 太線が TLV を表す 25 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
実験結果 Ø 解析画面 26 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
開発の現状 l 本来ならば ここから手順 4 の盗み出した IP データから ネットワークを混乱させる HELLO TC メッセージを 作成 送信し セキュリティ対策の必要性を明らかにするはずですが 現状では 3 番の HELLO TC を盗み出すところまでしか できていない 1 2 OLSR を用いてネットワーク環境を作る 悪玉ノード ( 端末 ) を追加 3 HELLO,TC を盗み見 IP アドレスを把握 4HELLO,TC から得られた IP アドレスを使い あたかも全ての端末が悪玉ノードと隣接していると錯覚させる HELLO,TC を作成しネットワークに流す 27 All Rights Reserved, Copyright 2013 Osaka Institute of Technology
まとめ Ø アドホックネットワークのセキュリティ対策の必要性を明らかにする事を目的に アドホックネットワークのセキュリティ攻撃により OLSR を用いたネットワークを構築するための HELLO TC を盗み見るツールを開発 実施した Ø 今回傍受することが出来たが 偽物の HELLO を作成して送信するプログラムが未完成のため 今後偽装して送信するプログラムを追加し ネットワークを壊せる事を確認する Ø 将来的には第三者による情報を傍受されないように HELLO TC の暗号化など考える ご静聴ありがとうございました 28 All Rights Reserved, Copyright 2013 Osaka Institute of Technology