...

IP IP アドレス構造を用いた攻撃通信の判別法 アドレス構造を用いた攻撃

by user

on
Category: Documents
5

views

Report

Comments

Transcript

IP IP アドレス構造を用いた攻撃通信の判別法 アドレス構造を用いた攻撃
IP アドレス構造を用いた攻撃通信の判別法
IP アドレス構造を用いた攻撃通信の判別法
Detecting Malicious Traffic with IP Address Features
Detecting Malicious Traffic with IP Address Features
早稲田大学 基幹理工学部 情報理工学科
後藤滋樹研究室
千葉 大紀
1
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
研究背景
「IP
IP攻撃通信」
攻撃通信」
• スキャン通信
• マルウェア本体の感染活動
マルウェア
感染
他ホストへの有害な動作
有害な動作
• DDoS (Distributed Denial of Service) 攻撃
• 迷惑メールの送信
迷惑メ ルの送信
• 情報詐取
2
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
研究目標
未知の IP IP 攻撃通信の判別
IP 攻撃通信の判別
• IP アドレスの構造的な特徴の利用
IP アドレスの構造的な特徴の利用
• 過去に観測されていない通信の判別
複数の情報からの悪性判断
• 統合的な悪性判断手法
3
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
提案手法
教師あり機械学習
Step 1. 訓練モデルの構築
悪性
IP アドレス
リスト1
通常
IP アドレス
IP アドレス
リスト1
悪性
IP アドレス
リスト2
通常
IP アドレス
IP アドレス
リスト2
複数のアドレスリスト
の利用
4
2クラス (悪性と通常) の
パターン識別器として利用
Daiki CHIBA, GOTO Lab.
特徴ベクトル
抽出
アドレスの
構造的特徴を利用
SVM
((Support Vector Machine)
pp
)
訓練モデル
Feb 3, 2011
提案手法
Step 2. 通信の悪性評価
訓練モデル
判定対象
IP アドレス
IP アドレス
特徴 クトル
特徴ベクトル
抽出
SVM
(Support Vector Machine)
悪性
IP アドレス
5
Daiki CHIBA, GOTO Lab.
通常
IP アドレス
Feb 3, 2011
提案手法
IP アドレス
IP アドレス 192 . 168 . 5 . 88
特徴ベクトル抽出手法
第 n オクテット
上位
1
2
3
4
オクテット
次元の特徴ベクトル
N = 1 =1
M = 256
N = 2 ・初期値は
初期値は 0
M = 512
N = 3 M = 768
N = 4 6
バイナリビット列
・第 n オクテットの数値 X
M = 1024
※出力が 0 のパラメタは表記の都合上省略している
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
性能評価
評価に用いるデータ
悪性
•ハニーポットで収集したデータ
•Spamhaus
•DBL (Domain Block List)
•PBL ((Policy Block List
y
)
•SBL (Spamhaus Block List)
悪性 IP アドレス
Honeypot DBL
3,097
508
PBL
SBL
628,042
4,233
計
635,880
通常
•Alexa Top Global Sites
通常 IP アドレス
•DNSWL (DNS White List) (
)
Alexa
•CDN (Contents Delivery Network)
10,869
DNSWL
136,500
CDN
67
Univ
125
計
147,561
•教育機関
教育機関
7
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
性能評価
特徴ベクトル単位で重複を除去
→ ユニークな特徴ベクトル
評価方法 y 特徴ベクトル抽出
N
1
2
3
4
悪性
164
16,307
563,083
635,880
通常
173
9 176
9,176
37 213
37,213
147 561
147,561
和集合
179
21,085
600,027
783,441
線形 SVM (LIBLINEAR)
線
(
)
非線形 SVM (LIBSVM)
非線
(
)
5分割交差検定 (5‐fold Cross‐Validation)
→ 未知のアドレスに対する性能評価
8
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
性能評価
評価指標
精度
正答率
適合率
再現率
悪性と判定したアドレスのうち
実際に悪性の割合
実際に悪性のアドレスのうち
正しく悪性と判定した割合
真の結果
判定結果
9
Daiki CHIBA, GOTO Lab.
悪性
通常
悪性
(Positive)
True Positive
(TP)
False Positive
(FP)
通常
(Negative)
False Negative
(FN)
True Negative
(TN)
Feb 3, 2011
性能評価
N = 3 が最も良い結果
→ 多くのネットワークで IP アドレスブロック /24
線形 SVM
100%
90%
精度
80%
(Accuracy) 70%
60%
適合率
50%
(Precision)
40%
再現率
30%
(Recall)
20%
10%
0%
N = 1
N = 2
N = 3
N = 1 は識別が困難
→ 約半数の特徴ベクトルが重複
10
Daiki CHIBA, GOTO Lab.
非線形 SVM
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
N = 4
N = 1
N = 2
N = 3
N = 4
N = 3 に対して N = 4 の性能が劣る
→ アドレス全体を含むと未知のアドレスに
対するロバスト性が失われる
Feb 3, 2011
まとめ
未知の IP IP 攻撃通信の判別
攻撃通信の判別
• IP アドレスの構造的な特徴の利用
ド
構造的な特徴 利
• 過去に観測されていない通信の判別
複数の情報からの悪性判断
• 統合的な悪性判断手法
本研究の成果:
IP アドレスそのものを悪性通信の判断材料として利用可能
11
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
今後の課題
特徴ベクトルの拡張
学習アルゴリズムの改善による精度の向上
実ネットワ クで動作させるための実装
実ネットワークで動作させるための実装
12
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
補足資料
13
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
SVM (Support Vector Machine) SVM (Support Vector Machine) とは?
とは?
y 教師あり機械学習のうちの1つ
y 「線形識別器」+「マ
「線形識別器」+「マージン最大化」
ジン最大化」
2クラスの判別
特徴空間に学習データ
を2分する超平面を構築
一意な最適解が
意な最適解が
求まる
y 線形分離不可でも分類可能
y 「ソフトマージン」+「カーネル法」
」
法」
「はみ出し」を許容
「はみ出し」の総和は
なるべく小さく
14
Daiki CHIBA, GOTO Lab.
入力データを
高次元に写像して
データを識別する
Feb 3, 2011
交差検定 (Cross
(Cross‐‐Validation)
y 5分割交差検定 (5‐fold Cross Validation)
y 特徴ベクトルデ
特徴ベクトルデータをランダムに5分割
タをランダムに5分割
y 4個を教師データ、残り1個をテストデータ
y 5種類繰り返して平均値を算出
y 悪性
悪性・通常のそれぞれの特徴ベクトルはユニーク
通常のそれぞれの特徴ベクトルはユニ ク
y 特徴ベクトル単位で重複を除去済
y 純粋に未知のIPアドレスに対する性能評価と同等
15
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
参考文献
y [1] Dionaea, http://dionaea.carnivore.it/
y [2] The Spamhaus Project, http://www.spamhaus.org/
[2] The Spamhaus Project http://www spamhaus org/
y [3] Alexa Top Sites, http://www.alexa.com/topsites
y [4] DNS Whitelist, http://www.dnswl.org/
y [5] R.E.Fan, K.W.Chang, C.J.Hsieh, X.R.Wang, and C.J.Lin. LIBLINEAR: A Library for Large Linear Classification, Journal of Machine Learning Research 9 (2008), pp.1871‐‐1874. Software available at http://www.csie.ntu.edu.tw/~cjlin/liblinear
y [6] C.C.Chang and C.J.Lin, LIBSVM : a library for support vector
[6] C.C.Chang and C.J.Lin, LIBSVM : a library for support vector
machines, 2001. Software available at http://www.csie.ntu.edu.tw/~cjlin/libsvm
http://www.csie.ntu.edu.tw/
cjlin/libsvm
16
Daiki CHIBA, GOTO Lab.
Feb 3, 2011
Fly UP