Presentation is loading. Please wait.

Presentation is loading. Please wait.

i-Pathルータのフロー情報を用いたDoS攻撃検知法

Similar presentations


Presentation on theme: "i-Pathルータのフロー情報を用いたDoS攻撃検知法"— Presentation transcript:

1 i-Pathルータのフロー情報を用いたDoS攻撃検知法
情報処理学会創立 50周年記念(第 72回)全国大会 セッション名:情報爆発時代における分散処理と運用技術 講演番号:2ZP-4 会場:ZP会場 3月9日(火)15:30~17:30 i-Pathルータのフロー情報を用いたDoS攻撃検知法 野上晋平 下田晃弘 後藤滋樹 早稲田大学 基幹理工学研究科 情報理工学専攻

2 研究背景 ネットワークの可視化 従来のインターネット エンドノードからネットワーク内部の情報が 直接得られない ネットワークの多様化
エンドノードからネットワーク内部の情報が 直接得られない ネットワークの多様化 情報開示を求める声の高まり ネットワークの可視化

3 ネットワークの多様化 ネットワークの利用形態が多様化 ネットワークアプリケーションの最適化、 障害時の原因究明などで困難に直面
ブロードバンド モバイル P2P ネットワークアプリケーションの最適化、 障害時の原因究明などで困難に直面

4 情報開示を求める声 ネットワーク中立性の観点から情報開示を求める声が高まっている 米連邦通信委員会(FCC) 情報開示の重要性を指摘
「ISP は正当な理由があればサービスの規制を行えるが、その場合はネットワークの管理情報を開示しなければならない」

5 研究概要 ルータを通過するフロー情報を用いて DoS攻撃を検知 複数のルータを使用してDoS攻撃の 送信元を識別する
本研究ではこれまで注目されてない ルータが持つ情報を活用する ルータを通過するフロー情報を用いて DoS攻撃を検知 複数のルータを使用してDoS攻撃の   送信元を識別する ※フロー:宛先と送信元のIPアドレス、ポート番号が       同一のパケット

6 i-Pathルータ 小林克志(産業技術総合研究所)が開発 ネットワーク内部の可視化が目的 取得できる情報の例
FreeBSDのカーネルをSIRENSに入れ替え実装 ネットワーク内部の可視化が目的 エンドノードが通信経路の情報を取得できる 取得できる情報の例 ネットワーク帯域、輻輳状態、遅延、パケットロス

7 可視化の例 32% 1G 17% 500M 68% 10G 43% 3G 34% 2G 33% 1G 59% 2G 2% 100M 48%
可用帯域 [%] ネットワーク帯域 [bps] 32% 1G 17% 500M 68% 10G 43% 3G 34% 2G 33% 1G 59% 2G 2% 100M 48% 35% 700M 41%

8 SHIMヘッダ IPヘッダとTCP/UDPヘッダの間にルータの持つ情報を書き込むSHIMヘッダを挿入
イーサネットヘッダ IP ヘッダ TCP/ UDP データ イーサネット トレイラ イーサネットヘッダ IP ヘッダ TCP/ UDP データ イーサネット トレイラ SHIMヘッダ IPヘッダとTCP/UDPヘッダの間にSHIMヘッダを挿入

9 DoS攻撃 サービス不能(Denial of Service)攻撃 DoS攻撃の種類
大量のパケットを送りつけ、サーバの資源やネットワーク帯域を占有してサービスを妨害する 攻撃の送信元の識別が困難 DoS攻撃の種類 SYN Flood(TCP), Connection Flood(TCP), ・・・ UDP Flood, ICMP Flood, ・・・

10 従来のDoS攻撃の検知 DoS攻撃の経路情報が得られない

11 実証実験 nf_conntrackでフロー情報を取得 MIB(SNMP)に情報を書き込む
i-Pathルータが実現する機能を確認する i-Pathルータの機能をLinuxで実装 nf_conntrackでフロー情報を取得 MIB(SNMP)に情報を書き込む ルータを観測して得られたフロー情報をもとにDoS攻撃を検知(検知プログラム) 定常状態から外れた場合に検知 複数のルータからDoS攻撃の経路を識別 ルータでの処理

12 実証実験 DoS攻撃 通常のトラフィック 各ルータで同時にDoS攻撃の検知を行う

13 SYN Flood攻撃 SYN Flood攻撃とは 検知法
TCP 接続のスリーウェイハンドシェイクにおいて、接続要求(SYNパケット)を大量に送りつける攻撃 送信元アドレスの偽装が容易 検知法 内部状態がSYN_RECVのフロー数で判定 SYNフラグとACKフラグが立っている

14 実験結果(SYN Flood) フロー数

15 実験結果(SYN Flood) $ ./detector output01.csv 02:50:04: Router3: SYN Flood Router4: SYN Flood 02:50:05: 02:50:06: 02:50:07:

16 Connection Flood攻撃 Connection Flood攻撃とは 検知法 TCP による接続を大量に確立させる攻撃
内部状態がESTABLISHEDのフロー数で判定 TCPコネクションが 確立している

17 実験結果(Connection Flood)
フロー数

18 実験結果(Connection Flood)
$ ./detector output02.csv 20:45:59: Router3: Connection Flood Router4: Connection Flood 20:46:04: 20:46:07: 20:46:08: Router4: Invalid Data

19 UDP Flood攻撃 UDP Flood攻撃とは 検知法 UDP パケットを大量に送りつける攻撃 送信元アドレスの偽装が容易

20 実験結果(UDP Flood) フロー数

21 実験結果(UDP Flood) $ ./detector output03.csv 21:23:46: Router3: UDP Flood Router4: UDP Flood 21:23:50: 21:23:51: 21:23:52:

22 ICMP Flood攻撃 ICMP Flood攻撃とは 検知法 ICMP パケットを大量に送りつける攻撃 送信元アドレスの偽装が容易

23 実験結果(ICMP Flood) フロー数

24 実験結果(ICMP Flood) $ ./detector output04.csv 21:49:15: Router3: ICMP Flood Router4: ICMP Flood 21:49:16: 21:49:17: 21:49:18:

25 まとめ ネットワーク可視化の重要性が高まる中で、ルータが持つ情報に着目した 実証実験でルータのフロー情報を用いてDoS攻撃の検知を行った

26 ご清聴ありがとうございました

27 i-Pathプロジェクト 情報通信研究機構の委託を受け、産業技術総合研究所、早稲田大学後藤滋樹研究室の共同研究
FreeBSDのカーネルをSIRENSに       入れ替え実装 i-Path Project:

28 実験環境 Polling 観測用ホスト

29 i-PathルータとSNMP i-Pathルータ SNMP End-to-End原理にもとづいて、エンドノードへの情報提供を目的とする
ルータで情報が開示されれば、どのホストでも等しく情報が得られる SNMP Managerにより、ホストの集中管理を行う 外部のホストのアクセスは制限される 情報の取得に加えて、一部の設定も行える

30 End-to-End原理 パケットの再送やQoS などの複雑な機能は可能な限りエンドノードで行うべきだという考え
インターネットの基本的な設計原理 TCPにおける再送制御などがこれにあたる

31 nf_conntrack フローを追跡して情報を保持する (Linuxの持つConnection Tracking機能)
通信中のフローについての情報 プロトコル コネクションの状態、数 送信元と宛先のIPアドレス・ポート番号 パケット数、トラフィック量

32 例:nf_conntrackの情報 ipv4 2 tcp ESTABLISHED src= dst= sport=34711 dport=5001   packets=9736 bytes= src= dst= sport=5001 dport=34711   packets=3687 bytes= [ASSURED] mark=0 secmark=0 use=2 内部状態 コネクションの確立状態

33 nf_conntrack 補足 The meaning of the states are: * NONE: initial state * SYN_SENT: SYN-only packet seen * SYN_RECV: SYN-ACK packet seen * ESTABLISHED: ACK packet seen * FIN_WAIT: FIN packet seen * CLOSE_WAIT: ACK seen (after FIN) * LAST_ACK: FIN seen (after FIN) * TIME_WAIT: last ACK seen * CLOSE: closed connection (RST)

34 nf_conntrack 補足 それぞれのタイムアウト時間 [TCP_CONNTRACK_SYN_SENT] = 2 MINS
[TCP_CONNTRACK_SYN_RECV] = 60 SECS [TCP_CONNTRACK_ESTABLISHED] = 5 DAYS [TCP_CONNTRACK_FIN_WAIT] = 2 MINS [TCP_CONNTRACK_CLOSE_WAIT] = 60 SECS [TCP_CONNTRACK_LAST_ACK] = 30 SECS [TCP_CONNTRACK_TIME_WAIT] = 2 MINS [TCP_CONNTRACK_CLOSE] = 10 SECS [TCP_CONNTRACK_SYN_SENT2] = 2 MINS

35 今後の課題 実運用のトラフィックに近い環境で評価を行い説得力を高める 今回使用しなかったパラメータを使用して  検知の精度を高める

36 DoS攻撃の種類 SYN Flood攻撃 Connection Flood攻撃 UDP Flood攻撃 ICMP Flood攻撃
TCP で接続の最初に行われるスリーウェイハンドシェイクにおいて、攻撃者が接続要求(SYNパケット)を大量に送りつける攻撃 Connection Flood攻撃 TCP による接続を大量に確立させる攻撃 UDP Flood攻撃 UDP パケットを大量に送りつける攻撃 ICMP Flood攻撃 ICMP echo request パケットを大量に送りつける攻撃 送信元アドレスの偽装が可能

37 DoS攻撃の検知法 SYN Flood攻撃 Connection Flood攻撃 UDP Flood攻撃 ICMP Flood攻撃
SYNフラグとACKフラグが立っている SYN Flood攻撃 内部状態がSYN_RECVのフロー数で判定 Connection Flood攻撃 内部状態がESTABLISHEDのフロー数で判定 UDP Flood攻撃 UDPのフロー数で判定 ICMP Flood攻撃 ICMPのフロー数で判定 TCPコネクションが 確立している


Download ppt "i-Pathルータのフロー情報を用いたDoS攻撃検知法"

Similar presentations


Ads by Google