0204_motojima

Download Report

Transcript 0204_motojima

IPアドレスの特徴を用いた
spamメール送信者判別方法
1G05R172-3
後藤研究室 B4 本嶋 悠也
2009/2/4
卒論審査
1
研究の背景



電子メールは現在最も普及している通信手段の一つ
その中でspamメール(迷惑メール)が問題となっている。
spamメールへの対策法については現在までに多様な対策法
が開発されてきたが、その度にspamメール送信者は新たな手
口を開発し、spamメールの送信方法は年々巧妙化してしまっ
て十分な対策が行えていない
メールのヘッダや本文の内容によらない
新しい判別方法を提案する
2009/2/4
卒論審査
2
spamメール


受信者の意図に関わらず、自動的に送られてくる
メール
不特定多数の相手に送られる、内容として広告・宣
伝・誘導・詐欺等の性質が強いメール
2009/2/4
卒論審査
3
spamメール

問題点




メール整理に伴う時間の浪費・受信者への精神的
負担
重要なメールの見落とし
ネットワーク資源及びサーバ資源の浪費
サーバ資源の浪費に伴うメール配送遅延
spamメールは長年問題視されながらも、未だ
根絶には至っていない
2009/2/4
卒論審査
4
既存手法

ブラックリスト


DNSBL (DNS Blackhole List)


spamメール送信者のIPアドレスを収集したデータベース
グレイリスト


リストに登録されているIPアドレスからのメールの受信を拒否
メール受信の際に送信元の情報をデータベースに登録し、受信せずに
一時的エラーを示すステータスコードを返す。その後、一定時間以上経
ってから同じサーバからメールが再送されてきたときに受信する方法
ルールベースフィルタ

メールのヘッダや本文におけるspamメールの特徴をルールとし
て記述しておき、そのルールに基づいて判別する方法
2009/2/4
卒論審査
5
提案手法

IP アドレスと IPアドレスから求めることのできる属性
に対してナイーブベイズ分類器 (以下NBC)を
適用し、メール送信者がspammer (spamメール送
信者)であるかlegit (正常なメール送信者)であるか
を判定する手法を提案する
2009/2/4
卒論審査
6
NBC (Naive Bayes Classifier)
P C i | A  
P C i 
P A 
 P  A j  a jk | C i 
j
A : 属性 ( A1 , A 2 ,  , A j )
: 各属性が取り得る値
C i : クラス
a
jk
2009/2/4
卒論審査
7
提案手法で用いる属性

BGP Prefix


AS番号


そのIPアドレスを割り当てられている国
DNS逆引き


そのIPアドレスが属するネットワークに割当てられている番号
国情報


IPアドレスに対応する、AS番号に関連づけられたネットワーク
DNS逆引きが可能か否か
OS

IPアドレスから判定された、ホストのOS
2009/2/4
卒論審査
8
提案手法の手順



メールのログを集計し、spammer, legitらしいIPアド
レスを抽出してリストを作成する
抽出したspammer、legitにおける各属性の生起確
率を求め、これを訓練データとする
判別の際には、判別対象のIPアドレスの各属性を求
め、訓練データにおけるそれらの出現確率をNBCに
適用する
2009/2/4
卒論審査
9
実験概要



実験1 : 提案手法のspammer判別率の評価
実験2 : 訓練データと判別データの時期の違いの
影響
実験に用いたデータ


協力者の方に提供して頂いた、ある企業網にて計測
された4ヶ月間のSMTPログ (2008年4月~7月)
このログではメールは分類済み
(spam / ham / greylisted / session)
2009/2/4
卒論審査
10
実験1 概要

spammer 判別率を評価


「spammer を legit と判定した数 / spammer数」
を FNR (False Negative ratio)
「legit を spammer と判定した数 / legit数」を
FPR (False Positive ratio)
とする
2009/2/4
卒論審査
11
実験1 結果
FNR (%)
2009/2/4
FPR (%)
2008-04
0.346
5.903926
2008-05
0.308
6.661009
2008-06
0.284
5.339308
2008-07
0.326
5.190984
卒論審査
12
実験2 概要


訓練に用いるSMTP ログの時期と判別に用いる
SMTP ログの時期をずらし、判別率への影響を
測定
各月1ヵ月分のspammer 及び legit のリストを
訓練データとし、4ヵ月分のリストをテストデータと
する
2009/2/4
卒論審査
13
実験2 結果
4.5
FPR, FNR (%)
4
3.5
3
2.5
2
FNR (%)
1.5
FPR (%)
1
0.5
0
0ヵ月
1ヵ月
2ヵ月
3ヵ月
訓練データと判別データの時期の差
2009/2/4
卒論審査
14
まとめ


IPアドレスから求まる属性をNBCに適用し、メール送
信者がspammer であるか否かを判断する手法を提
案した
個人では変更しづらい属性を用いることにより、
spammer による偽装を防ぐことができると思われる
2009/2/4
卒論審査
15
まとめ

実験の結果、提案手法はspammer をspammer
と判別する精度が高い一方でlegit をlegit と判
別する精度がやや低いこと、訓練・判別に用いる
データの時期の差によって判別の精度に違いが
あることが分かった

ただし、精度はNBCにおける、spammer と判別する
確率の閾値を変えることである程度調整が可能で
ある
2009/2/4
卒論審査
16
今後の課題

本研究の今後の課題を以下に述べる。




各属性間の相関の分析
判別に有効な新しい属性を取り入れる
訓練量による判別率への影響
False Positive のIP アドレスの分析
上記の課題を解決することで、判別率をより向上
させることができると期待される
2009/2/4
卒論審査
17
ご清聴ありがとうございました
2009/2/4
卒論審査
18
2009/2/4
卒論審査
19
AS (Autonomous System)




大規模なTCP/IPネットワークにおいて、各組織が保有・
運用する自律したネットワーク
インターネットはマクロに見ると、ASを相互に接続した形
態となっている
AS間の経路制御に使われるプロトコルがBGP
(Border Gateway Protocol)
AS間の境界にあるルータは経路情報を交換する
2009/2/4
卒論審査
20
BGP Prefix

BGP PrefixとAS番号の対応表は、Route Views Archive
Project のものを整形して使用
2009/2/4
卒論審査
21
2009/2/4
卒論審査
22
AS番号


BGP Prefix同様、対応表はRoute Views Archive Project
のものを整形して使用
AS番号はBGPで経路制御を行うASに割り当てられる
2009/2/4
卒論審査
23
国番号

MaxMind社のGeoIPというデータベースを使用。GeoIPは
IPアドレスを地理情報にマッピングしたデータベース
2009/2/4
卒論審査
24
OS



p0f というツールを用いた。p0f は、passive fingerprintingの
実装の一つ。
passive fingerprinting はOS によってTCPパケットに記載する
ヘッダのデフォルト値の組み合わせが異なる性質を利用し、
TCP パケットに記録されたヘッダの各属性値の組み合わせか
らそのパケットを送出したホストのOS を判定する技術。
p0f では、事前に集めた各OS と属性値の組み合わせから構
成されるテーブルを用意し、パッシブ測定によって得たTCPヘ
ッダの属性とテーブルを比較することにより、OSを判定する。
2009/2/4
卒論審査
25
交差確認法

10-fold cross validation(10分割交差確認法)
1.
2.
3.
4.
2009/2/4
データを10個のグループに分ける。
分けたうちの一つを除外した9個のグループのデー
タを使ってパラメータを推定。
除外するデータを毎回変えて、推定を10回繰り返
す。
各推定時に評価値を算出し、10回の平均値で評価
する。
卒論審査
26
Laplace Correctionによる補正
P  A j  a jk | C i  
n ijk  f
n i  fn j
n i : クラス C i が生起する回数
n ijk : クラス C i と属性 A j が同時に生起する回数
n j : 属性 A j の変数a jk が取り得る値の数
f : 倍数因子 (=1/n)
2009/2/4
卒論審査
27
各属性の生起確率の例 (BGP)
1
2
3
4
5
6
7
8
9
10
spammer
BGP Prefix
生起確率
83.0.0.0/11
0.012366825
60.16.0.0/13
0.009378645
221.200.0.0/14
0.009291158
190.42.0.0/16
0.005385333
190.40.0.0/16
0.005150089
201.240.0.0/16
0.004932343
86.128.0.0/10
0.004638774
201.230.0.0/16
0.004391866
90.192.0.0/11
0.003830002
190.43.0.0/16
0.003769733
2009/2/4
legit
BGP Prefix
210.157.16.0/20
202.72.48.0/21
211.125.80.0/20
59.106.0.0/17
17.254.6.0/24
210.150.0.0/16
66.163.168.0/21
202.218.0.0/16
125.200.0.0/13
202.248.0.0/16
卒論審査
生起確率
0.045848476
0.025719877
0.024042494
0.023483366
0.017892088
0.013139502
0.012300811
0.011182555
0.009225608
0.008946044
28
各属性の生起確率の例 (AS番号)
spammer
AS番号
legit
生起確率
AS番号
生起確率
1
9121
0.092810483
7506
0.072407045
2
4837
0.042635508
4713
0.071009226
3
4134
0.03673886
2514
0.042773274
4
6147
0.032210903
23820
0.034386357
5
7470
0.020983358
2497
0.033547666
6
19262
0.020178474
4694
0.033268102
7
3269
0.017063924
15169
0.033268102
8
22927
0.017011432
9370
0.032708974
9
7738
0.016595381
714
0.023483366
10
5617
0.015596081
4732
0.021805983
2009/2/4
卒論審査
29
各属性の生起確率の例 (国情報)
spammer
国情報
legit
生起確率
国情報
生起確率
1
CN
0.098390233
JP
0.668157674
2
TR
0.093220701
US
0.241543193
3
US
0.075291625
GB
0.011462119
4
RU
0.052846256
CA
0.010902991
5
ES
0.05135897
FR
0.00866648
6
GB
0.048143324
DE
0.007268661
7
BR
0.047472587
CN
0.004473022
8
CO
0.045133758
KR
0.004193458
9
AR
0.035484874
NL
0.00363433
10
PE
0.032759157
IT
0.003354767
30
2009/2/4
卒論審査
各属性の生起確率の例 (RDNS)
spammer
DNS逆引き
legit
生起確率
DNS逆引き
生起確率
1
1
0.677844311
1
0.952194576
2
0
0.322155689
0
0.047805424
2009/2/4
卒論審査
31
各属性の生起確率の例 (OS)
spammer
OS
1
Windows
2
Bob
3
生起確率
0.630855821
legit
OS
Linux
生起確率
0.457366508
0.302910413 FreeBSD
0.14984624
0.028491718 UNKNOWN
0.138384121
4
Paul
0.018195427
Solaris
0.109868605
5
UNKNOWN
0.012392099
Windows
0.070170534
6
Linux
0.003365347
Oscar
0.041655018
7
FreeBSD
0.002130803
HP-UX
0.021246855
8
MacOS
9
Solaris
0.000367447
BSD/OS
0.001956947
10
NetBSD
0.000202193 NetCache
0.001677383
2009/2/4
0.00092931 OpenBSD
卒論審査
0.002516075
32
ベイズの定理
P(B)=事象Bが発生する確率
 P(B|A)=事象Aが起きた後での、事象Bが発生する確率
とする。P(A)>0ならば、

P B | A  
P  A | B P  B 
PA
が成り立つ。
2009/2/4
卒論審査
33
提案手法
IP : xxx.xxx.xxx.xxx
訓練データ
・BGP Prefix : 133.9.0.0/16
・AS番号 : 17956
・国情報 : JP
・DNS逆引き : 有り
・OS : Windows
legit ?!!
legit
legit
2009/2/4
spammer : legit = 9 : 1
legitのリスト
133.9.0.0/16 : 30%
17956 : 20%
JP : 70%
0.189%
有り : 90%
Windows : 50%
spammer ?
spammer
卒論審査
spammerのリスト
133.9.0.0/16 : 10%
17956 : 10%
JP : 30%
0.076%
有り : 40%
Windows : 70%
34