PPT

マルウェアの通信履歴と
定点観測の相関について
○小堀 智弘、 菊池 浩明(東海大)
寺田 真敏(日立製作所)
背景
• ネットワーク上に蔓延するコンピュータウィル
スの80%はボットである
http://www.blackhat.com/presentations/bh-jp-05/bh-jp-05-koyama.pdf
仮説1. ポートスキャンはすべてボットが行っている
ボットとワームの違い
ボット
ワーム
C&C
C&Cに依存
ワームによって異なる
仮説2. スキャンパターン ≠ MW(依存しない)
スキャンパターン
s2
s4
/16 ブロック
→ t
全ブロック
→ t
rnd
ランダム
→ t
研究目的
• 仮説1. ポートスキャンはすべてボット
• 仮説2. スキャンパターン≠MW
は本当だろうか?
実験的に検証する
研究方法
解析 a. CCC攻撃元通信データ(3)と攻撃通信データ
(2)の比較
解析 b. 攻撃通信データとISDASの比較
ボットネットのしくみ
LD
s1
DL
s2
スキャン
MW
s3
C&C
ISDAS
観測データ
CCC攻撃通信データ
CCC攻撃元データ
解析a
解析b
実際の通信
100
Outbound
Inbound
90
80
Number of packets
80000
70
60000
60
50
40000
40
30
20000
Number of packets
100000
20
10
0
0
200
07:18:40 PE_BOBAX.AK
07:18:47 TROJ_PACK.DT
400
600
Time Seconds
800
0
1000
07:18:46 ipscan s.s.s.s dcom2 -s
07:20:00 ipscan s.s.s.s dcom2 -s
問題1. MWの多重感染(DL)
問題2. 多重コマンドとスキャンの一意性
提案方法:仮説2の検証
1
2
3
146
1.
CCC攻撃通信データ
リセット
リセット
未完
n0 = 58
b.
一意のダウンロード
n2 = 29
c.
一意のコマンド
n1 = 53
未知(多重感染)
m = 32(54)
2. a.
タイムスロット
決定木学習
自動分類
決定木
• 機械学習アルゴリズムC4.5
– 情報量利得に基づいた識別
– 決定木を作成
– 連続値に対応
スキャンパターンの特徴量
1/2
Co:累積送信パケット数
Co
Uo:送信ユニークアドレス数
Uo
SR:スキャンレート
s2
s4
スキャンパターンの特徴量
2/2
CI:総入力パケット数[pkt]
UI:ユニーク発信元アドレス数
IN
VPS:dSP の標準偏差
MWを決定
MW:マルウェア名
DL:ダウンロードの有無(0,1)
CO:総出力パケット数[pkt]
OUT UO:ユニーク宛先 アドレス数
スキャンパター
DP:宛先ポート(135, 445, ICMP) ンを決定
SR:スキャンレート[pkt/s]
提案方法:仮説1の検証
ISDASとの比較
• ハニーポットのスキャンをISDASで観測して
いるかを調査
1. ポートの比率
2. スキャンレートの比率
実験方法
実験 1. スキャンパターンの識別
実験 2. MWの識別
実験 3. ISDASとの比較
実験1:C4.5による
スキャンパターンの決定木
Co
> 2,065
<= 2,065
Ci
u
(63/0)
> 1,487
<= 1,487
Uo
<= 73,762
S2
(9/2)
D_port(135)
> 73,762
S4
(5/0)
0
rnd
(2/0)
1
S4
(34/0)
実験1:スキャンパターンの散布図
400000
350000
s4
s2
rnd
S4
300000
C_o
250000
S2
200000
150000
100000
50000
0
0
0.5
1
1.5
2
2.5
H_o
3
3.5
4
4.5
5
実験1:スキャンパターンの
決定木の精度
s2
ST/評価値 rnd
2
5
未分類 m
rnd
2
s2
7
s4
2
u
1
total
5
14
適合率 PST 0.67 0.78
• 再現率
0.93、平均適合率
s4
24
u
1
4
38
1
57
62
63
1.0 0.92
0.94
total
32
2
11
41
58
144
0.93
実験1:マルウェアとスキャンタイプの
相関
• マルウェアとスキャンタイプ
MW/ST
BOBAX
KOLABC
VANBOT
VIRUT
OTHER
s2
17
7
30
7
8
s3
2
2
4
0
2
s4
28
14
42
20
20
結論:仮説2成立
rnd
3
5
5
1
2
total
35
18
58
25
32
実験3:定点観測との比較
• 宛先ポートの分布の比較
1
OTHER
ICMP
445
135
Ratio
0.8
21%
20%
0.6
0.4
7%
9%
96%
96%
0.2
0
41%
41%
CCC
ISDAS
Data set
3つの観測データによる
スキャンレート SR
180
160
140
SR [addr/s]
120
100
80
60
40
20
0
CCC
ISDAS
結論:仮説1不成立
MSBlaster
まとめ
• 仮説1
「ポートスキャンは全てボットによって行われ
ている」は成立しない
• 仮説2
「ポートスキャンのタイプはマルウェアに依存
しない」は成立する
• 決定木学習により、ペイロードを見ることなく
スキャンパターンを同定することは可能であ
る
ご清聴ありがとうございました
問題点
• マルウェア同定の困難さ
• C&Cサーバの命令と攻撃の相関の不明確さ
Ipscan s.s. dcom2
Ipscan s.s.s.s dcom2
特徴量の抽出
• 基本定義
MWの
ダウンロードの有無
(有 1, 無 0)
I
CI
CO
宛先ポート
(135,445,ICMP)
DL
ST
PD
[pkt]
ソースポートの
増分の標準偏差
SR
VPS
UI
[pkt/s]
1ホスト当たりの
平均通信量
UO
[addr]
HI
HO
MW
[pkt/addr]
28.1
1
25
0
0000
000
0
0
1
3
1
8.3 000000000
28.9
239
11201
1
0010
100
130.3
0
33
5410
7.2
2.1 000100001
3971 518940
1
1010
100
304.4
0.04
58 99915
68.5
5.2 100010100
28.29
スキャンタイプ
(s2,s3,s4,rnd)
1秒間当たりの
スキャンパケット数
通信先の
ユニークホスト数
マルウェア名
(PE,WORM,BKDR,TROJ
,BOBAX,KOLABC,VIRUT
,VANBOT,OTHER)
スキャンタイプについての統計値
• 各スキャンタイプの平均の特徴量
ST
CI
SR
[pkt/s]
Vps
Ho
[pkt/addr]
μ
σ
μ
σ
3401.9
2051.9
6014.5
1011.8
194.5
59.9
250.9
112.8
0.025
0.033
0.013
0.009
10.7
17.9
2.8
0.7
μ
1850.0
167.6
0.017
3.7
σ
rnd μ
1850.1
1635.6
63.0
140.0
0.044
0.125
5.3
3.7
σ
1271.6
97.0
0.167
1.1
S2
S3
S4
決定木学習
•
特徴量に顕在する不確定性
1. スキャンパターンの不確定性
2. マルウェア識別名の不確定性
•
学習データ
–
–
–
–
n=146のデータから確実に判定可能なデータ
n0=58(未感染)
n1=53(スキャンタイプが一意)
n2=29(MW,スキャンタイプが一意)
C4.5によるMWの決定木
C_in
> 589
<= 589
VIRUT
(11/3)
Host_out
<= 2
>2
Host_in
<= 21.6
KOLABC
(1/0)
Uniq_in
> 21.6
VANBOT
(8/1)
> 11
<= 11
VIRUT
(5/0)
> 30.7
VIRUT
(2/0)
Host_in
<= 30.7
VANBOT
(2/0)
C4.5によるMWの散布図
4000
VIRUT
VANBOT
KOLABC
BOBAX
VIRUT
3500
3000
T_in
2500
2000
1500
1000
500
VANBOT
0
0
10
20
30
40
50
host_in
60
70
80
90
100
MW決定木の精度
u KO. VB. VR.
MW/評価値
UNKNOWN
6
1 47
u 53
1
4
BOBAX
KOLABC
1
2
VANBOT
3
5
VIRUT
4
15
適合率 PMWE 0.91 1.0 0.75 0.2
• 再現率RSTE=0.79、平均適合率PSTE=0.69
total
54
58
2
3
9
19
0.69
マルウェアとスキャンタイプの相関
• マルウェアとのスキャンタイプの比率
MW/ST
BOBAX
KOLABC
VANBOT
VIRUT
OTHER
s2 s3 s4 rnd
0.49 0.06 0.8 0.09
0.39 0.1 0.78 0.28
0.52 0.07 0.72 0.09
0.28
0 0.8 0.04
0.25 0.06 0.63 0.06
total
1
1
1
1
1
累積パケット数
• あ
100000
Outbound
Inbound
80000
100
90
80
60000
60
50
40000
40
30
20000
20
10
0
0
200
400
600
Time Seconds
800
0
1000
Number of packets
Number of packets
70
過去半年間における
VIRUTのスキャンタイプ数
1400
s2
s3
s4
Rand
1200
Number of type
1000
800
600
400
200
0
10/01/07 11/01/07 12/01/07 01/01/08 02/01/08 03/01/08 04/01/08 05/01/08
Day
ポートスキャンパケットの
平均到着間隔
PD
ISDAS
CCC 2008
50 sensor
76 slot
μ(T)
157.67
140.25
σ(T)
0.0465
183.38
u
MWについての統計量
• 各MWの平均の特徴量
MW名
HI
Ho
[pkt/addr] [pkt/addr]
PD
SR
[pkt/s]
DPS
μ
σ
Bobax
58.72
26.8
135,445
89.23
0.022
0.031
Kolabc
34.01
14.85
135,445
97.78
0.036
0.08
Virut
43.09
28.08
135,445
149.16
0.016
0.029
Vanbot
33.01
7.5
135
124.78
0.027
0.07
宛先IPの推移
(シーケンシャル、ST=s2、i=29.58)
122.27.0.176
Source address
122.26.217.160
122.26.178.144
122.26.139.128
122.26.100.112
122.26.61.96
122.26.22.80
122.25.239.64
00:02:55 00:05:45 00:08:3800:11:32 00:14:2300:17:17
time
宛先IPの推移
(ランダム、ST=rnd、i=28.46)
10.11.0.0
Source address
10.10.192.0
10.10.128.0
10.10.64.0
10.10.0.0
14:58:51
14:58:52
14:58:53
14:58:54
time
14:58:55
14:58:58
ソースポートの推移
(インクリメント)
5000
4500
Source port
4000
3500
3000
2500
2000
1500
1000
19:59:00
19:59:30
20:00:00
20:00:30
20:01:00
20:01:30
20:02:00
20:02:30
20:03:00
20:03:30
20:04:00
20:04:30
20:05:00
20:05:30
time
ソースポートの推移
(デクリメント)
5000
4500
Source port
4000
3500
3000
2500
2000
1500
1000
14:54:00
14:55:00
14:56:00
14:57:00
14:58:00
14:59:00
15:00:00
15:01:00
15:02:00
15:03:00
15:04:00
15:05:00
15:06:00
time
ソースポートの推移
(ランダム)
5000
4500
Source port
4000
3500
3000
2500
2000
1500
1000
56:00
56:15
56:30
56:45
57:00
57:15
time
57:30
57:45
58:00
58:15
定点観測との比較
• 宛先ポートの分布の比較
PD
[%] ISDAS [pkt] [%] CCC 2008
135
41
697488
82
76
445
9
158616
14
13
ICMP
20
346447
3
3
OTHER
29
500791
0
0
3つの観測データによる
スキャンレート SR
Dataset
ID
SR [addr/s]
CCC2008
ST = rnd
ST = S2
ST = S4
28.78
148.44
167.96
ISDAS
12/29/07 06:28:34
2/21/08 02:45:09
2/25/08 13:33:54
29.09
9.13
42.09
ワーム
Blaster
Dasher
11.08
4968.61