2010 年度卒業論文 - goto laboratory · 02/03/2011 2010年度卒業論文...

34
02/03/2011 年度卒業論文 2010年度卒業論文 Clustering Analysis of Internet Traffic 「クラスタリングによる通信の分類と時間変化の解析」 Clustering Analysis of Internet Traffic 2011/02/03 () 早稲田大学基幹理工学部情報理工学科 2011/02/03 () 後藤研究室 B4 1W0701381 片山雄介 卒業論文 02/03/2011

Upload: others

Post on 30-Aug-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

02/03/2011

年度卒業論文2010年度卒業論文

Clustering Analysis of Internet Traffic

「クラスタリングによる通信の分類と時間変化の解析」Clustering Analysis of Internet Traffic

2011/02/03 (木)

早稲田大学基幹理工学部情報理工学科

2011/02/03 (木)

後藤研究室 B4

1W070138‐1   片山雄介

卒業論文 ‐ 02/03/2011

02/03/2011

Agenda

1. 研究背景

2 研究内容2. 研究内容

3. 提案手法

4. 実証実験

4 1 実験内容4.1  実験内容

4.2  実験結果 ‐ (通信の分類)

4.3  実験結果 ‐ (時間的な変化の検出)

5. 結論結論

1卒業論文 ‐ 02/03/2011

02/03/2011

研究背景

ネットワ ク上には様々な種類の通信が存在

1. 研究背景

• ネットワーク上には様々な種類の通信が存在

• Web通信や, メール通信, 更に悪意のある通信も存在

• ホストの通信内容を把握するには, 相応の知識や経験が必要

NTP通信

メ 送信

FTPによる

upload/downloag

Webページ閲覧メール送信

SynFlood (攻撃)

ポートスキャンDNS要求

2卒業論文 ‐ 02/03/2011

DNS (Domain Name System), FTP (File Transport Protocol), NTP (Network Time Protocol)  

02/03/2011

研究内容2. 研究内容

ネットワークの状態を把握可能にすることを目的とする

これにより 異常な通信の発見にも有益なものとなる

通信内容を基に 似た内容の通信同士を「分類」する

これにより, 異常な通信の発見にも有益なものとなる

通信内容を基に, 似た内容の通信同士を「分類」する

ネットワークの状態の「変化を検出」する

「クラスタリング」の分析手法を使用する

※ クラスタリング : データを似たものをグループ (クラスタ) として分類する手法

教師なし学習アルゴリズムであるため, 訓練データを必要としない!

3卒業論文 ‐ 02/03/2011

02/03/2011

提案手法3. 提案手法 ‐ (通信の分類)

1 ある期間に受信したパケットを解析する1. ある期間に受信したパケットを解析する

2. 送信元ごとに特徴ベクトルを作成する

( 使用するパラメ タに関しては後述 )( 使用するパラメータに関しては後述 )

3. 得られた特徴ベクトルでクラスタリングを行い, 分類を行う

4.異なる期間でも同様に分類を行い, 結果を比較して変化を検出する

(TCP, UDP, …..):::

特徴ベクトル Clustering

卒業論文 ‐ 02/03/2011 4

02/03/2011

◆ 既存のクラスタリングアルゴリズム ( k 法 )◆ 既存のクラスタリングアルゴリズム ( kmeans法 )

kmean法 : 重心からの距離を基準に近いデータ同士で分類する手法

いくつのクラスタに分割するかを 事前に設定する必要があるいくつのクラスタに分割するかを, 事前に設定する必要がある。

いくつのクラスタ (グル プ) に 点を ダ 重 近 点 デ タをいくつのクラスタ (グループ) に

分けるか決定 (2とする)2つの点をランダムに

重心として選択

重心に近い点にデータを

割り当てる

収束するまで繰り返す

重心を更新 クラスタリング終了

5卒業論文 ‐ 02/03/2011

最適な初期の重心位置を使用して, kmeansを行う方法 =>kmeans++

02/03/2011

使 す タ グ ゴ ズ

方針 : 分割数 ( K ) の値を変えてkmeans++で

◆ 使用するクラスタリングアルゴリズム

方針 : 分割数 ( K ) の値を変えてkmeans++で

クラスタリングを行っていき, 最適な状態で終了する

クラスタリング結果の評価値には, BIC (ベイジアン情報量基準) を使用

K=4K=2 K=3 K=4 K=5

この結果を採用

クラスタリング結果の評価値には, BIC ( イジアン情報量基準) を使用

improved improved Notimproved

通信分類上のメリ ト アルゴリズムのメリ ト

クラスタ数が変化する場合のアルゴリズムとし

て, Xmeansがあるが,そちらより安定した結果が

ネットワークの通信状態は刻一刻と変化するた

め, クラスタ数 (通信の種類) が常に同じとは限

通信分類上のメリット アルゴリズムのメリット

6

, ,

出るというメリットがある。

, ( )

らない。その点に対応可能である。

卒業論文 ‐ 02/03/2011

02/03/2011

実証実験

4 1 実験内容

4. 実証実験

4.1  実験内容

実際の通信データを使用し, 通信の分類とネットワークの状態の時間的変化の検出が可能であることを示す。

◆使用するデータ◆使用するデ タ

外部から学内へ流入するパケットをサンプリングしてキャプチャした8分間のデータを8等分したデータを使用

( 期間 : 2010年12月6日15時2分4秒 ~ 2010年12月6日15時10分3秒 ) 

時間順に D1 D2 D8 とする時間順に, D1, D2, …… , D8 とする。

さらに, D4にSYN Flood攻撃通信, D6にポートスキャン通信を混ぜる

TCP (SYN) ポートスキャンとTCP‐Nullポートスキャン

卒業論文 ‐ 02/03/2011 7

( )

02/03/2011

TCP UDP HTTP

◆ 使用するパラメータ

TCP, UDP, HTTP すべてのパケットに対して TCP パケットとUDP パケッ トが占める割合

また, HTTP パケットが占める割合

SYN, FIN, PUSH, ACKすべての TCP パケットに対して, 各々のフラグが立っているパケットが

占める割合

TCP portnum, UDP portnum, dstnump , p ,アクセスを試みた宛先 TCP ポートの総数 (TCP portnum) と

宛先 UDP ポートの総数 (UDP portnum), そして宛先 ホストの総数 (dstnum)

これら10個のパラメータを使用し, 10次元の特徴ベクトルを作成

卒業論文 ‐ 02/03/2011 8

れら 個の ラ タを使用し, 次元の特徴 クトルを作成

02/03/2011

実験結 信 類4.2  実験結果 – (通信の分類)

C1 C3 ~ C6 C8 ~ C10 : Web通信C1, C3   C6, C8   C10 : Web通信

C2   : DNS通信

C12: NTP通信C12: NTP通信

C7   : メール通信やFTP通信

C11 : その他アプリケーションによる通信C11 : その他アプリケ ションによる通信

このように, 通信を分類できた

Web通信をさらに詳しく解析するには,さらに詳しいパラメータが必要

卒業論文 ‐ 02/03/2011 9

さらに詳しいパラメ タが必要

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D1

D1の分類結果

10卒業論文 ‐ 02/03/2011

D1の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D2

D2の分類結果

11卒業論文 ‐ 02/03/2011

D2の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D3

D3の分類結果

12卒業論文 ‐ 02/03/2011

D3の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D4

SYN Flood通信のクラスタが出現

D4の分類結果

13卒業論文 ‐ 02/03/2011

D4の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D5

D5の分類結果

14卒業論文 ‐ 02/03/2011

D5の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D6

TCP (SYN) スキャンのクラスタ

ポートスキャンのクラスタが出現(TCP‐Nullスキャン)

D6の分類結果

15卒業論文 ‐ 02/03/2011

D6の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D7

D7の分類結果

16卒業論文 ‐ 02/03/2011

D7の分類結果

02/03/2011

実験結 時 的な変 検 デ タ4.3  実験結果 – (時間的な変化の検出) データ : D8

D8の分類結果

17卒業論文 ‐ 02/03/2011

D8の分類結果

02/03/2011

■ SYN Flood とポートスキャンに関するクラスタの時間変化

C13が SYN FloodとTCP (SYN) スキャン C14が TCP Nullスキャンのクラスタ

SYN Flood

C13が, SYN FloodとTCP (SYN) スキャン,   C14が, TCP‐Nullスキャンのクラスタ

TCP (SYN) スキャン

キTCP‐Null スキャン

このように 時間変化をとらえることが可能であった

卒業論文 ‐ 02/03/2011 18

このように, 時間変化をとらえることが可能であった

02/03/2011

結論5. 結論

クラスタリングを用いた本提案手法により

• 通信を, 類似性の強いもの同士で分類できた

クラスタリングを用いた本提案手法により

通信を, 類似性の強いもの同士で分類できた

• 時間的な変化を検出することができた

今後の課題

外れ値や データの偏りの影響を小さくする外れ値や, デ タの偏りの影響を小さくする

クラスタリング自体の精度を向上させる

今回は, ネットワーク全体の変化を検出したが, 

今後は各ホストの通信の変化にも注目する

卒業論文 ‐ 02/03/2011 19

02/03/2011

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

卒業論文 ‐ 02/03/2011 20

02/03/2011

参考文献■参考文献

[1] http://itpro nikkeibp co jp/members/NBY/Security/20040415/2/[1] http://itpro.nikkeibp.co.jp/members/NBY/Security/20040415/2/

[2] Nmap ‐ Free Security Scanner For Network Exploration & Security Audits,http://nmap.org/http://nmap.org/

[3] Hping ‐ Active Network Security Tool, http://www.hping.org/

[4] 新納 浩幸 “ R で学ぶクラスタ解析 ” オーム社 2007[4] 新納 浩幸 ,  R で学ぶクラスタ解析 , オ ム社, 2007.

[5] D.Arthur and S.Vassilvitskii, “ k‐means++: The Advantages of Careful Seeding ”,in SODA ’07: Proceedings of the eighteenth annual ACM‐SIAM symposium on g g y pDiscrete algorithms. Society for Industrial and Applied Mathematics, pp. 1027‐1035, 2007.

“[6] D.Pelleg, A.Moore. “ X‐means: Extending K‐means with Efficient Estimation of the Number of Clusters ”, 2000.

21卒業論文 ‐ 02/03/2011

02/03/2011

[7] 森達哉, 川原亮一,上山憲昭, ”通信パターンに基づくホスト分類方法”,IEICE, B‐7‐4, pp.131, 2005.IEICE, B 7 4, pp.131, 2005.

[8] J. Erman. M. Arlitt, M. Anirban,“Traffic Classification Using Clustering Algorithms”, Proceedings of the 2006 SIGCOMM Workshop on Mining 

Network Data, New York: ACM Press, pp. 11‐15, 2006.

[9] M R h S S O S t h k dN D ffi ld Cl f S i M i f[9] M.Roughan,S.Sen,O.Spatscheck,andN.Duffield. Class‐of‐Service Mapping for QoS: A Sta‐ tistical Signature‐based Approach to IP Traffic Classification.In IMC ’04, Taormina, Italy, October 25‐27, 2004.

[10] http://www.cisco.com/warp/public/cc/pd/sqsw/sqidsz/index.shtml 

[11] Snort, http://www.snort.org/

[12] 豊田秀樹編著“ データマイニング入門 ”, 東京図書, 2008.

[13] 山西健司著“ データマイニングによる異常検知 ”, 共立出版, 2007.

22卒業論文 ‐ 02/03/2011

[13] 山西健司著 デ タマイ ングによる異常検知 , 共立出版, 2007.

02/03/2011

[14] 宮本 貴朗, 小島 篤博, 泉 正夫, 福永 邦雄, “SVM を用いたネットワークトラヒックからの異常検出”, IEICE, vol.J87‐B, no.4 pp.593‐598, 2004.ヒックからの異常検出 , IEICE, vol.J87 B, no.4 pp.593 598, 2004.

[15] Guofei Gu, Roberto Perdisci, Junjie Zhang, Wenke Lee“BotMiner: Clustering Analysis of Network Traffic for Protocol‐ and Structure‐Independent Botnet Detection ”USENIX Security ’08 Refereed Paper, pp. 139‐154.

[16] 及川達也, 和泉勇治, 太田耕平, 加藤 寧, 根元義章,“ 統計的クラスタリング手法によるネッ トワ ク異常状態の検出 ” IEICE l 102 349手法によるネッ トワーク異常状態の検出 IEICE, vol. 102, no. 349,

pp. 83‐88, 2002.

[17] Wireshark http://wwwwireshark org/[17] Wireshark, http://www.wireshark.org/

[18] SKYPE, http://www.skype.com/

23卒業論文 ‐ 02/03/2011

02/03/2011

類精度■ 分類精度

SYN Flood 通信のデータを最も多く含むクラスタ (C13) をSYN Flood クラスタSYN Flood 通信のデ タを最も多く含むクラスタ (C13) をSYN Flood クラスタ

スキャン行為のデータを最も多く含むクラスタ (C14) をスキャン行為のクラスタ

として考えた場合

True Positive : 対象のクラスタに正しく分類されたホスト

False Positive 対象のクラスタに誤って分類されたホスト

デ タ True Positive False Positive True Positive Rate

False Positive : 対象のクラスタに誤って分類されたホスト

データ True Positive False Positive True Positive Rate

SYN Flood 攻撃 16 3 84.1 %

TCP (SYN) ポートスキャン 6 2 75.0 %( )

TCP‐Null ポートスキャン 4 1 80.0 %

今回使用したデータの分類結果は比較的良い精度を出すことができた

卒業論文 ‐ 02/03/2011 24

今回使用したデ タの分類結果は比較的良い精度を出すことができた。

02/03/2011

◆ Xmeans clustering Algorithm

Kmeansを最適なKの値で行う方法Kmeansを最適なKの値で行う方法(クラスタを2つに分割していき, 最適な状態で終了していく)

まずkmeansで

クラスタリング

まだ分割できそう

25

まだ分割できそう

だったら分割最適な状態

卒業論文 ‐ 02/03/2011

02/03/2011

◆ Xmeansの問題点

Xmeansは, 結果が安定しない

(Xmeansは 1つのクラスタを2つに再帰的に分割していくというアルゴリズムだが(Xmeansは, 1つのクラスタを2つに再帰的に分割していくというアルゴリズムだが, 

はじめの分割状態に偏りがあると, 最終結果も偏りが生じてしまう。)

この場合, 3つに分割

されるのが最適とする

Xmeansで初期クラスタ数を2にした場合,

このような分割結果となってしまう

26卒業論文 ‐ 02/03/2011

ゴ ズ

02/03/2011

ゴ ズ

◆ 提案するアルゴリズムの問題点

提案したアルゴリズムによって, 結果は安定した。(分割も結合もできた)

しかし, これでも局所解に陥る可能性が想定できる(可能性は低いはず) (以下)

‐BIC 局所解

ここが最適とする

K (クラスタ数)

ここをクラスタ初期値にした場合, ‐BICの大きい方向

へとKを変化させるので, 最適解へとたどり着ける

ここを初期値とした場合, 局所解に陥る

27卒業論文 ‐ 02/03/2011

◆ 過去に出てきた (既出の) クラスタとの対応付け

02/03/2011

◆ 過去に出てきた (既出の) クラスタとの対応付け

通信 クラスタ クラスタ

既出のクラスタ情報

通信タイプID

クラスタ番号

重心 データ数クラスタ

半径

照合 照合

新出の通信タイプを含む

すべて既出の通信タイプ

更新 更新

新たなクラスタのクラスタの「類似度」に基づき

通信a1

通信a2

通信d1

通信d2

タイプを含む通信タイプ新たなクラスタの

情報を追加①

③ ⑤

対応付けを行う

通信a2

通信a3

通信a4

通信d4

通信d5

④ ③

これにより, 過去に出てきたタイプの通信との対応付けが可能になる

28卒業論文 ‐ 02/03/2011

02/03/2011

◆ クラスタの類似度についての詳細◆ クラスタの類似度についての詳細

h

C1 C2

r1 r2

h 半径の和と重心間の距離の比に注目 (r1+r2)/h

X1個のデータ X2個のデータ

① クラスタの大きさや密度も考慮する必要がある。 A = (w1r1 + w2r2) / h とする

② wには密度 (2次元として計算) を採用 (w1+w2=1の制約を設けてスケーリング)

α = x1/πr12 β = x2/πr22 w1 =α / (α+β) w2 = β / (α+β)

③ A = (αr1+βr2) / h(α+β) = r1r2(x1r2+x2r1) / h(x1r22+x2r12)

④ A(x,r,h) = r1r2(x1r2+x2r1) / h(x1r22+x2r12) , A(x,r,h) > 1 で同じクラスタとみなす④ A(x,r,h)   r1r2(x1r2 x2r1) / h(x1r2 x2r1 ) ,   A(x,r,h)   1 で同じクラスタとみなす

C2C1

場合 値を閾値とする

29

この場合,  r1 = r2 = h,   A(x,r,h) = 1    ∴ この値を閾値とする

卒業論文 ‐ 02/03/2011

02/03/2011

◆ TCPのセッションの確立/切断(パラメータにsyn,finを使用した理由)

Host A Host B Host A Host BHost A Host B Host A Host B

時間 時間

セッションの確立 セッションの切断

30TCPのセッションは, 通常SYNとFINは1対1の割合で発生することになる。

卒業論文 ‐ 02/03/2011

02/03/2011

◆ TCP (SYN) スキャン (上) とTCP‐Nullスキャン (下)

TCP (SYN) パケット

送信元 送信先

TCP (SYN ACK) パケ ト(ポ トが開いている場合)

TCP (RST+ACK) パケット (ポートが閉じている場合)

TCP (SYN+ACK) パケット(ポートが開いている場合)

TCP (Null) パケット

送信元 送信先

応答なし (ポートが開いている場合)

TCP (RST+ACK) パケット (ポートが閉じている場合)

卒業論文 ‐ 02/03/2011 31

応答なし (ポートが開いている場合)

時 変 検 方

02/03/2011

◆ 時間変化の検出方法

時間時間 t

① この時間空間に対して統計を作成&クラスタリング → 「通信の分類① この時間空間に対して統計を作成&クラスタリング → 「通信の分類」

② 次の時系列に対してもクラスタリングを行う → 「通信の分類」

③ 分類結果を比較し, 「変化を検出」する (クラスタ数やデータ数の変化に注目)。

④ ②③を反復して行い, 時間を追って分析していく

32卒業論文 ‐ 02/03/2011

02/03/2011

◆ ネットワーク図

キャプチャマシンキャプチャマシン

学外ネットワーク

学内ネットワ ク

(インターネット)

卒業論文 ‐ 02/03/2011 33

学内ネットワーク