ネットワークトラフィック 可視化システムの開発 ISC B3 kominu 親:武⽥田教授 1 コンセプト • ネットワークの⼤大規模化・複雑化 – 状態の把握が困難に • 既存のツール – Tcpdump – Wireshark →ずっと⽂文字を眺める必要がある 直感的に状態を把握したい! 2 研究⽬目的 • ネットワークトラフィックを監視すること で通信の異異常を検知する • 直感的な状況把握を可能とし、ネット ワーク監視のコストを軽減させる 3 関連研究 「実ネットワークトラフィック可視化システム NIRVANAの開発と評価」 鈴鈴⽊木宏栄、衛藤将史、井上⼤大介 • 既存の通信可視化システムでは最も有名 • ベースはnicterの世界地図攻撃可視化システム Atlas • 世界地図に加え背景画像を⾃自作しマッピング可 • パケットの⾊色分けはプロトコルとそのフラグ毎 • マウスクリックによって詳細情報を表⽰示できる 4 ネットワーク可視化⼿手法 • 3次元空間表⽰示 – 軸を⾃自由に設定できる – 状態の把握に特化した表現 • 世界地図表⽰示 – 通信先の国まで把握できる – トラフィックの地域性を知ることが出来る 鈴鈴⽊木和也、⾺馬場俊介、和⽥田英彦、中尾康⼆二、⾼高倉弘喜、岡部寿男, “迅速な障害対応 を⽀支援するトラフィック可視化システムの構築と評価” 5 ⼿手法 • キャプチャ部:C++ / libpcap – キャプチャ結果をUDPで可視化プログラムに送信 • 可視化部:Processing – 3次元空間表⽰示を選択 – UDPで送られてきたキャプチャ結果を可視化 – リアルタイム且つリモートな通信可視化が可能に – 3Dアニメーションで実際の流流れを再現 6 実装 パケットキャプチャプログラム • 実⾏行行環境:Amazon Linux • ⾔言語:C++ • パケットキャプチャ:libpcap 送信元、送信先のIPアドレスとポート番号、プロトコル、 経過時間をUDPでクライアントに送りつづける 7 実装 可視化プログラム • 実⾏行行環境:Mac OS X • ⾔言語:Processing version2.2.1 • ライブラリ:OpenGL, hypernet.media UDPで受け取ったキャプチャ結果を配列列に格納し、経過時 間をもとにリアルタイムに可視化 OpenGLライブラリを⽤用いて3Dアニメーションで再現する 8 可視化について① • 3次元空間表現 – 3次元空間上での3Dアニメーション • 描画する情報 – IPアドレス – ポート番号 – プロトコル – 経過時間 – ⽅方向(送信、受信) 9 可視化について② • 情報を割り当てられる要素 1. 座標 2. ⾊色 ← IPアドレス、ポート番号、プロトコル 3. 向き(送信か受信か) 4. ⽂文字(経過時間、補⾜足) • パケットの持つ情報を各要素に割り当て、状態 の把握を促す 10 可視化について③ • 実験も兼ねて5つの表現⽅方法を⽤用意した モード 座標 ⾊色 次元 1 IPアドレス(SV, CL) プロトコル 3D 2 IPアドレス(SV, CL) ポート番号 3D 3 IPアドレス(CL), ポート番号(SV) プロトコル 3D 4 IPアドレス(CL), ポート番号(SV) ポート番号 3D 5 IPアドレス(CL), ポート番号(SV) ポート番号 2D プロトコルによる⾊色分けの対象はTCP, UDP, ICMP TCPはフラグによりさらに⾊色分け 11 プロトコル⾊色分け⼀一覧 • TCP – SYN – SYN/ACK – ACK – RST – FIN – OTHER • UDP • ICMP • OTHERS 12 可視化について④ モード1、モード2 • サーバを中⼼心としクライア ントのIPアドレスを座標に 変換して周囲に割り振った 表現 • 図はサーバ上のwebページ にアクセスした際の物であ る 13 可視化について⑤ モード3、モード4 • 左側にクライアントのIPア ドレス、右側にサーバの ポート番号を割り振った表 現 • こちらもサーバ上のweb ページにアクセスした際の 物である 14 可視化について⑥ モード5 • 左側にクライアントのIP アドレス、右側にサーバ のポート番号を割り振っ た表現 • つまり、モード4を2Dで 表現したもの • シンプルだが、華やかさ にかける 15 デモ • 今から実際に可視化プログラムを動かし ます。 – http://kominu.com – ping kominu.com – など • 悪さはしないでください 16 評価 • 評価実験 – DoS攻撃やポートスキャンなどの異異常を含む 通信の様⼦子を可視化し、被験者に異異常だと感 じた時間を記録してもらった。またその異異常 を推測してもらった。 – 実験に際し、ポートスキャンにはnmap、 DoS攻撃にはhping3を使⽤用した 17 評価実験① • 5⼈人の被験者を対象として評価実験を ⾏行行った。⽤用意したキャプチャデータに含 まれる異異常は以下のとおりである。 時間(秒) 攻撃内容 1 23〜~30 TCP connect scan 2 82〜~93 DoS (SYN Flood) 3 100〜~105 DoS (SYN Flood) 4 133〜~153 UDP port scan 5 168〜~178 TCP NULL port scan 6 247〜~255 DoS (SYN Flood (random source) ) 7 260〜~279 DoS (SYN Flood (random source) ) 18 評価実験② • 実験結果は以下のようになった。 ※被験者6が正しいデータ 19 評価実験③ • 異異常の内容推測 – ほぼ全ての攻撃がDoSと推測されていた。 被験者1 被験者2 被験者3 1 DDoS DoS 2 DoS 3 DoS 4 被験者5 正答 port scan Unknown port scan DoS(F5) Unknown Unknown DoS Unknown DoS Unknown DoS Unknown port scan Unknown port scan Unknown DoS ManyUDP DoS 5 Unknown Unknown DoS 6 DDoS DDoS DoS 7 DDoS 被験者4 DoS port scan DoS 20 評価実験 考察 • 異異常の検知⾃自体は上⼿手くいく – 直感的に異異常な通信を発⾒見見できている • 異異常内容の判別精度度は低い – 使⽤用者の知識識に依存 – 異異常ごとにサンプルをある程度度⽤用意すべき – システム側で判断して欲しいとの声も 21 模範解答 • TCPのSYNとSYN/ACKが⼤大量量に⾏行行き来し ていて、ACKがない →TCP SYN Flood攻撃(DoS) • ⼀一つのクライアントから⼤大量量のポートに アクセス →ポートスキャン • random source – 各パケットの送信元IPアドレスを偽装 – DDoSとの⾒見見分けがつきづらい 22 異異常を可視化した様⼦子 DoS (SYN Flood) ポートスキャン(TCP connect) 23 結果 • 完全にリアルタイム且つリモートな通信 可視化に成功した • DoS攻撃やポートスキャンの検知も可能で あるが、知識識が必要 • TCPのフラグ情報を含むプロトコルの⾊色分 けが状態把握には有効 24 まとめ • ネットワーク通信可視化システム – 異異常検知 – 監視コストの軽減 • 3次元空間表現での3Dアニメーション – リアルタイムで可視化可能に – 多様な軸の割り当てを実装 – より直感的な把握が可能に 25
© Copyright 2024 ExpyDoc