Jubatusによる外れ値検出の性 - ieice.orgswim/jpn/presentations/swim2013-19.pdf ·...

Post on 25-Oct-2019

0 views 0 download

Transcript of Jubatusによる外れ値検出の性 - ieice.orgswim/jpn/presentations/swim2013-19.pdf ·...

機械学習を用いた サイバーアタック検出システム

に関する性能評価 ~Jubatusによる外れ値検出の性

能評価~

沖縄工業高等専門学校 情報通信システム工学科 祖慶実頼

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

1.研究背景

インターネットの普及 サイバー攻撃の増加

図:サイバー犯罪検挙数の推移(平成22年度版) (警察庁,「サイバー犯罪の検挙状況等について」より引用)

セキュリティシステムの性能向上の必要性

0

1000

2000

3000

4000

5000

6000

13 14 15 16 17 18 19 20 21 22

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

2.目的

・新規の攻撃を検出できるシステムの開発 ・性能評価

過去に受けた 攻撃パターン

データの分析

トラフィックデータ 従来の手法

過去に受けた 攻撃パターン

新規の攻撃 パターン

2.目的

Jubatus

あらかじめ 教師データ として登録

本研究での手法

ラベル付けされた 正常なデータ

データの分析

正常値 攻撃

検出

トラフィックデータ

過去に受けた 攻撃パターン

新規の攻撃 パターン

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

3.システム概要 システムコンセプト

トラフィックログ 操作ログ

統計処理

外れ値検出

分析

正常

正常

攻撃 →排除

正常 →学習

正常値として フィードバック

3.システム概要 システムの構成

① 未知の攻撃を検出できる

② リアルタイムで検出できる

③ システムと外部とのやりとりだけでなく,攻撃を受けた端末が,システム内部で通常と異なる振舞いをしたときにその振舞いについても検出対象とする

④ 検出されたインシデントに関しては,管理者が内容を確認の上,最終的な判断ができる

3.システム概要 システムの全体構成案

図:システムの全体構成案

3.システム概要 システム環境

図:システムの構成図

HP ML350p Gen8

OS

KVM(仮想化ミドルウェア)

OS

Jubatus

OS OS

Jubatus Jubatus

ハードウェア環境: CPU:E5-2650 2GHz 2P/16C メモリ:128GB HDD:1TB SAS × 5

ソフトウェア環境: ホストOS:Ubuntu Server 13.04 ゲストOS:Ubuntu Server 13.04 仮想MW:kvm-22 仮想CPU数:1 仮想メモリ:1GB M/W:Jubatus 0.4.5/0.5.0

3.システム概要 Jubatus

•機械学習用の分散処理フレームワーク •リアルタイムで大規模なデータの分析を行うこと •多値分類,線形回帰,推薦(近傍探索),グラフマイニング,異常検知,クラスタリングといった主要な機械学習ライブラリを持っている

•LOFアルゴリズムを実装している

3.システム概要

LOF(Local Outlier Factor)

図:2次元データの分散例 (参考文献[1]より引用)

図に2次元でのデータの分散例を示す。このような分散データを分析する場合、各点o1,o2は周囲の点集合c1,c2とのユークリッド距離から密度を求め、それをスコアとして算出する手法。 先行研究により、外れ値検出アルゴリズムのなかで優れた性能を持っていることが報告されている

正常値:LOFスコアが1に近い値 異常値:LOFスコアが1から遠い値

[1] Markus M.Breunig:”LOF:Identifying Density-Based Local Outlier”(2000)

3.システム概要

•KDDCup’99で競技に用いられたデータセット

•全体の10%分のデータ量を用いる

•データサイズ:約75MB

•データ件数:約50万件

KDDデータ

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

4.評価システム 処理の流れ

②データの読み込み

⑤教師データの追加登録

④攻撃の判別(検出)

③LOFによるスコアの算出

①教師データの登録

①あらかじめ一定数,教師データの登録を行う ②クライアントからトラフィックデータをJubatusへ受け渡す ③JubatusでLOFによるスコアを算出する ④クライアントへスコアを受け渡し,それを基に攻撃データか正常データかを判断する ⑤正常データであれば教師データへ追加登録を行う

4.評価システム 初期手法

図:パラメータ

②データの読み込み

⑤教師データの追加登録

④攻撃の判別(検出)

③LOFによるスコアの算出

①教師データの登録

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

5.改善箇所

教師データ

②データの読み込み

⑤教師データの追加登録

④攻撃の判別(検出)

③LOFによるスコアの算出

①教師データの登録

正常値のみを教師データとして利用することで、ターゲットとなるトラフィックデータの密度をより正確に求めることができる。

・正常値のみを教師データとする

5.改善箇所

パラメータの修正

②データの読み込み

⑤教師データの追加登録

④攻撃の判別(検出)

③LOFによるスコアの算出

①教師データの登録

Jubatusでは,LOF及びJubatusのパラメータをサーバ実行時にコンフィグとして与えることができる.これらのパラメータを変更して振舞いを確認した.

・パラメータの変更

5.改善箇所

パラメータの修正

改善手法1

改善手法2 初期手法

5.改善箇所

攻撃判別

②データの読み込み

⑤教師データの追加登録

④攻撃の判別(検出)

③LOFによるスコアの算出

①教師データの登録

正常値であるにも関わらず、攻撃であると判断されるケースがあるため、スコアによる判定の範囲を拡大し、誤検出率を抑えた。

・正常値の判定範囲の拡大

5.改善箇所

攻撃判別

図:攻撃データの スコア分布(KDD)

図:正常データの スコア分布(KDD)

score

poi

nt

5.改善箇所

攻撃判別

図:スコア分布(KDD)

score

poi

nt

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

以下の方法で、 初期手法と、改善後の手法との比較を行った

6.1 処理時間の比較 6.2 検出率の比較 6.3 誤検出率に対する検出率の割合

6.結果

6.結果 6.1 処理時間比較

表:初期手法と改善後手法との処理時間の比較(秒)

スキップ頻度

10 100 1000

初期手法 2588 415 354

改善手法1 948 374 288

改善手法2 1779 667 530

6.結果 6.2 検出率比較

図:初期手法の種類別検出率 図:改善後の手法の種類別検出率

99.4

96.2

81.5

96.2

99.3

0 20 40 60 80 100

DoS

U2R

R2L

Probe

攻撃合計

25.5

3.8

27.1

48.7

25.8

0 20 40 60 80 100

DoS

U2R

R2L

Probe

攻撃合計

25.8 99.3

誤検出率(%)

攻撃検

出率(%)

: 改善手法1

: 初期手法

: 改善手法2

6.結果 6.3 誤検出率と攻撃検出率

図:誤検出率に対する攻撃検出率の割合

目次

1.研究背景 2.目的 3.システム概要 4.評価システム 5.改善箇所 6.結果 7.まとめ 8.今後の展望

7.まとめ

・初期の手法のパラメータや判別方法に改善を加える事で、新規の攻撃の検出率と速度の向上が得られた。 ・さらなる性能向上を測り、研究を進める

8.今後の展望

•システム化 トラフィックデータを直接扱うようにシステム化

•分散構成による高速化 サーバを並列化させ、高速化

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

参考文献

[1] Markus M.Breunig:”LOF:Identifying Density-Based Local Outlier”(2000) [2] Aleksandar Lazarevic: “A Comparative Study of Anomaly Detection Shemes in Network Intrusion Detection” [3] KDDCup1999(データ引用元), kdd.ics.uci.edu/databeses/kddcup99.html