Comments
Description
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