不完全な定点観測から 真の不正ホストの分布が分かるか? ◎小堀 智弘,菊池 浩明(東海大学) 寺田 真敏(日立製作所) 不正パケット:送信元アドレスの分布 • どちらの観測値が正しいのか? 10000 100000 Frequency [packets] Frequency [packets] 10000 1000 100 1000 100 10 10 1 1 0 50 100 150 IP address [/8] 218.*.*.* 200 250 0 50 100 150 IP address [/8] 222.*. *.* 200 250 モデル • 基本定義 条件付確率 P(A|B = b1) 定点センサ a1 a2 観測地b1での分布 P(A|B = b2) B = b1 ワーム P(A) 発信元 A = a1 a1 a2 発信元の真の分布 A = a2 A: 発信元の確率変数 B = b2 a1 a2 観測地b2での分布 B = b3 B: 宛先の確率変数 定点観測の問題点 • ポートスキャンの局所性 – 多くのワームは感染元のサブネットを狙う. 観測データはセンサのアドレスに依存 • センサの非一様性 – センサの設置アドレスの制約(未使用アドレス). センサはアドレス空間上に偏る • 不完全な観測データ – 局所性とセンサアドレスの偏りから生じる 観測データの歪み スキャンの局所性[石黒2005] 1 約半分のパケッ トは観測地から 8ビット以内のア ドレスから届く Proportion of hosts 0.8 all TCP UDP 135 445 1433 0.6 0.4 0.2 0 0 5 25 20 15 10 Difference of address [bin] 30 観測アドレスと発信元アドレス間のビット差(MSBから) 35 本研究の目的 • 入力:不完全な観測データ – S = {s1,…,sn}のn台のセンサで観測した 宛先がsiの時の発信元Aの確率分布 P(A|B = si) • 出力: 1. 不正パケット発信元の真の分布 P(A) 2. 任意の宛先アドレスbにおける,発信元の観測値 P(A|B = b) 従来研究 • センサの平均 – ISDAS定点観測,センサの平均値 センサアドレスの偏りに依存して歪む.国内のみ. • 空間補間 – [田村2005] アドレス距離から空間近似モデル IPアドレス間の距離とパケット数は比例? • 時系列分析 – [Zou2003] カルマンフィルタを用いた予測モデル 時間軸上の近似. 新規性 • 提案方式のアイデア – 1. ワームブラックボックス解析 – 2. ベイズ推定 – 3. 逐次的学習 1. ブラックボックス解析 • 任意の発信元Aにおける宛先Bの分布 宛先の分布 P(B|A=a1) ワーム 感染実験 b1 b2 b3 P(B|A=a2) A = a1 B = b1 B = b2 B = b3 b1 b2 b3 A = a2 感染実験 ► 実験PC - Pentium4 3.0GHz - 1.0GB RAM - Windows XP SP2 ► 仮想OSを構築するソフト - VMware ► 感染させたOS - Windows 2000 SP2 ► ► 観測期間 – 60[s] ウィルスの入手元 - http://vx.netlux.org/ 仮想OS ベースのOS ログをキャプチャー 実験結果:宛先の分布 P(B|A=b) • W32.Sasser.F (発信元b=100.100.100.1) 1000 Frequency 100 10 1 0 50 100 150 200 IP address [/8] 250 300 モデル化した宛先分布 • 宛先分布P(A|B=60) 1 実際の観測値に近 くなるように作った ピークを0.54とした 確率分布 probability 0.1 0.01 0.001 0 50 100 150 IP address [/8] 200 250 2. ベイズの定理 • 宛先分布P(B|A)から,センサアドレスsiにお ける発信元分布P(A|B)を推定 P( B si | A) P( A) P( A | B si ) P( B si ) P( B si | A) P( A) P( B si | A a) P( A a) a 宛先分布は 感染実験から既知 事前確率(ワーム分布) は未知 3. 逐次的学習 • 第0次近似 n 1 P( A) 0 P( A | B si ) n i 1 • 第k次近似 n 1 P( A) k 1 P( A | B si ) k n i 1 • 終了条件 – P(A)* = P(A)k if P(A)k = P(A)k+1 数値例 真の分布 P(AB) B A 宛先分布 P(B|A) 1 2 3 B 1 0.2 0.1 0.05 2 0.15 0.25 3 0.05 0 A 1 2 3 1 0.5 0.3 0.2 0 2 0.37 0.7 0 0.2 3 0.13 0 0.8 観測値 P(A|B) B A 1 2 3 1 0.57 0.3 0.13 2 0.3 0.6 0 3 0.2 0 0.8 ←わざと抜いて推定する 数値例 P(A)の収束 0.5 0.45 0.4 0.35 P(A) 0.3 0.25 0.2 0.15 真の値 A=1 A=2 A=3 0.1 0次近似 (センサ平均) 0.05 0 P(A) P(A)^0 P(A)^1 P(A)^2 近似レベル P(A)^3 P(A)^4 実観測値による評価 • JPCERT/CC ISDAS – 定点観測システム – 定常的に不正アクセスを観察 – センサ数11台 • 観測期間2006年5月 (1ヶ月間) • 学習: S = {s1,…,s10} 10台 • 評価: s11 1台 実験結果1: 不正者分布P(A)* 1 P(A)0 P(A)5 0.1 P(A) 0.01 0.001 0.0001 1e-005 1e-006 0 50 100 150 IP address [IP/8] 200 250 実験結果2: 未知観測値 P(A|B=s11)* 1 P(A|B) 1 P(A|B)0 9 P(A|B)9 P(A|B) 0.1 0.01 0.001 0.0001 1e-005 0 50 100 150 IP address [IP/8] 200 250 考察 • 誤差の原因 – 宛先分布P(B|A)が不正確: Aに依存しない一様 な分布の仮定に問題 – アドレスブロックの粒度: /8のブロックの大きさ 結論 • 不完全な観測データから真の分布を推定す る方式を提案した – 不正ホストの分布 P(A)* – 任意のアドレスにおける不正パケットの観測値分 布 P(A|B)* • 提案方式の妥当性を,人工的な数値例と実 観測データに適用して評価した. 実測値と予測値の散布図 • A=61の宛先アドレスの確率 0.5 0.45 Observed Distribution 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 0 0.01 0.02 0.03 0.04 Estimated Distribution 0.05 0.06 SasserFの宛先分布 800 "hist_100.100.100.1" 700 Frequency 600 500 400 300 200 100 0 0 50 100 IP/8 150 200 250 問題点 • ウィルスやワームの探索パケットには大きな局所性 が存在する 18000 16000 14000 Frequency 12000 10000 8000 6000 4000 2000 0 0 50 100 150 IP/8 200 250 実験結果3: 誤差 • 宛先分布P(A|B=60) A P(B=b)1 P(B=b) 58 0.14 0.11 59 0.05 0.01 61 0.14 0.09 0.19 … … … 222 0.14
© Copyright 2024 ExpyDoc