targreyでコストを掛けずにスパム削減

50
taRgrey taRgrey で手間をかけずにスパム削減 で手間をかけずにスパム削減 2010/12/4 長野ソフトウェア技術者グループ NSEG 第 10 回 勉強会 有限会社ジーワークス 佐藤 潔

Upload: kiyoshi-satoh

Post on 07-Jul-2015

1.909 views

Category:

Technology


1 download

DESCRIPTION

2010/10/23にインフラエンジニア勉強会(hbstudy)と2010/12/4に長野ソフトウェア技術者グループ(NSEG)勉強会でお話させていただいた際のプレゼン資料です。 taRgreyというスパム対策手法と、その背景にあるスパムの現状や対策手法について説明しています。 NSEGでの発表時に一部修正と追加いれたものに置き換えています。 この時のustは http://www.ustream.tv/recorded/10369319 と http://www.ustream.tv/recorded/11240729 で見ることが出来ます。

TRANSCRIPT

Page 1: taRgreyでコストを掛けずにスパム削減

taRgreytaRgrey で手間をかけずにスパム削減で手間をかけずにスパム削減

2010/12/4長野ソフトウェア技術者グループ NSEG

第 10 回 勉強会

有限会社ジーワークス

佐藤 潔

Page 2: taRgreyでコストを掛けずにスパム削減

taRgrey とは?

● 85% のスパムを

● ほぼ誤検出の心配せずに

● コストをかけず削減

といった特徴をもつスパム対策手法

誤検出の心配をしなくて良いことが最大の特徴

Page 3: taRgreyでコストを掛けずにスパム削減

自己紹介

● 有限会社ジーワークス

● 長野県白馬村

● スキーしたかったから :)

● taRgrey/Rgrey/Starpit

Page 4: taRgreyでコストを掛けずにスパム削減

今やってる仕事

● 8 年ほど前から地方中規模 ISP 様から外注

● サーバの管理やユーザサポート業務のアウトソース

● 小規模ですが自社のサーバサービスも

Page 5: taRgreyでコストを掛けずにスパム削減

なぜスパム対策を考え始めたか

● スパム対策についての要望が非常に多い

● メールアドレスへの愛着が既存ユーザをつなぎとめている

● 古くからのユーザほど…

– メールアドレスを変えたくない

– スパムが多い

Page 6: taRgreyでコストを掛けずにスパム削減

こんなことを話します

● スパムの現状

● taRgrey の手法説明

● 運用実績と実際の設定

● まとめ

Page 7: taRgreyでコストを掛けずにスパム削減

スパムの現状

Page 8: taRgreyでコストを掛けずにスパム削減

スパムの数

● 海外だと 90% 以上という報告が多い

● 日本だと 70% ~ 80% 程度という実感

● 年々増えている

– 5 年前のアメリカで 70% ~ 80%

Page 9: taRgreyでコストを掛けずにスパム削減

スパムは bot から出されるのが主流

● スパムの大半は海外の動的 IP から

● bot 化してリモートコントロールされた PC から出す

● 97% 前後が bot によるスパム

● 日本発のスパムは OP25B により激減

● bot は直接送信先メールサーバへ SMTP 接続してくる

Page 10: taRgreyでコストを掛けずにスパム削減

普通のメール送信の流れ

Page 11: taRgreyでコストを掛けずにスパム削減

bot からのスパム送信の流れ

Page 12: taRgreyでコストを掛けずにスパム削減

botnet は寡占

● bot 総数は不明だが何 100 万台という単位

● 少数の botnet 種が大半のスパムを送信

Page 13: taRgreyでコストを掛けずにスパム削減

日本語スパムはスパム 1.0

● 中国、フィリピン、タイ等の半固定的 IP から

● レンタルサーバか、事務所にサーバを何台も置いて

qmail や postfix から

● Windows PC を多数置いて専用のスパム送信ソフトから

Page 14: taRgreyでコストを掛けずにスパム削減

スパム対策はすでにセキュリティ対策の一環

● スパムでWebサイトへ誘導

● 誘導したページで各種脆弱性を突いて感染

● bot化

● そのbotを使ってスパムを撒く

…無限ループ

Page 15: taRgreyでコストを掛けずにスパム削減

taRgreyはbot狙い

taRgreyはbotからのスパムのみを狙ったフィルタ

Page 16: taRgreyでコストを掛けずにスパム削減

taRgreyの手法説明

Page 17: taRgreyでコストを掛けずにスパム削減

スパム対策手法は大きく3種に分類

● メールの内容で判断

● SMTPセッション情報で判断

● スパム送信時の制限

Page 18: taRgreyでコストを掛けずにスパム削減

メールの内容で判断

● 主に本文の内容を解析して判定

● 主な例:ベイジアンフィルタ

● キーワードとその「スパムらしさ」をメールから自動学習

 →「バイアグラ」が含まれているメールなら99%スパム

   「出会い」「お金」が含まれているメールなら95%スパム

● 他に… コラボレーションフィルタなど

語句 バイアグラ 出会い お金

語句が含まれていてスパムだった確率

99% 90% 50%

Page 19: taRgreyでコストを掛けずにスパム削減

SMTPセッション情報で判断

● SMTPセッション時の相手の「クセ」で判定

● 主な例: greylisting

● 一時拒否して再送してきたら受け取る

 → スパムは到達性は求めないからわざわざ再送しない

● 他に… tarpitting (返答の遅延)など

Page 20: taRgreyでコストを掛けずにスパム削減

スパム送信時の制限

● スパムを受け取らないのではなく、出させない対策

● 主な例:OP25B (Outbound Port 25 Blocking)

● 自ネットワークから外へ SMTP 接続をさせない

● 他に…  throttling (送信数制限 ) など

Page 21: taRgreyでコストを掛けずにスパム削減

OP25B での送信制限

Page 22: taRgreyでコストを掛けずにスパム削減

taRgreyで利用するフィルタ

taRgreyはSMTPセッション情報でのフィルタを

複数組み合わせたフィルタ

● S25R

● greylisting

● tarpitting

Page 23: taRgreyでコストを掛けずにスパム削減

S25R

● 「動的 IP っぽい」逆引き名を拒否

● 逆引き名とのパターンマッチング

– evrtwa1-ar3-4-65-157-048.evrtwa1.dsl-verizon.net

– pcp04083532pcs.levtwn01.pa.comcast.net

● 誤検出はホワイトリストで対処

● 再送をログで確認して救済

● 95% 以上のスパムがマッチ

● 検出率も高いが誤検出も多い

Page 24: taRgreyでコストを掛けずにスパム削減

greylisting

● 一時拒否して再送してきたら受け取る

● 一時拒否(4xx)で返すと正しいMTAは30分後とかに再送

● スパムbotは再送しない

● とても強力でこの種の中では一番メジャーな手法

● 95%以上のスパムを排除できる

Page 25: taRgreyでコストを掛けずにスパム削減

greylisting によるスパムフィルタ

Page 26: taRgreyでコストを掛けずにスパム削減

tarpitting

● SMTPセッションの返答を何10秒か待たせる

● スパムbotは応答時間を少ししか待たない

● 向こうから接続を切ってくる

● postfixやsendmailなら設定だけで簡単に利用できる

● 90%以上のスパムを排除できる

Page 27: taRgreyでコストを掛けずにスパム削減

tarpittingによるスパムフィルタ

Page 28: taRgreyでコストを掛けずにスパム削減

これら手法の良いところ

● 基本的にどれも軽い

● 判定の「揺れ」が無い

● スパム排除率は85~95%程度と軽いわりにそこそこ良い

Page 29: taRgreyでコストを掛けずにスパム削減

S25Rの問題点

● 誤検出が結構多い

● ログの確認で誤検出対応するのは大規模サービスでは

手間が掛かりすぎ

● 大きくメールが遅延する

Page 30: taRgreyでコストを掛けずにスパム削減

greylistingの問題点

● メールの遅延(30分など)

● 再送しない「正しい」サーバや違うIPから再送される場合

● ユーザ登録の確認メールなどで直接SMTPしゃべる場合

● DBのクリーンアップが意外に重かったり

Page 31: taRgreyでコストを掛けずにスパム削減

tarpittingの問題点

● 待ち時間を極端に短くしている「正しい」サーバがある

● メールマガジンなどの大量メール配信サービスに多い

● プロセス数の増大(経験的に90秒遅延で2~3倍)

Page 32: taRgreyでコストを掛けずにスパム削減

誤検出が無いことを重視すべき

● 検出率に目が行くが運用上重要なるのは誤検出率

● 重大な誤検出が起こるとユーザは使ってくれない

● 逆に仕事が増える

● 人が判定する場合より誤検出が少なくなるのが最低ライン

Page 33: taRgreyでコストを掛けずにスパム削減

誤検出や遅延が無くなるよう組み合わせる

● 多重に重ね合わせるのではなく条件を絞ることに使う

● 一つの仕組みでシンプルなシステムにこだわると

逆に誤検出や負荷の問題がおこりやすい

Page 34: taRgreyでコストを掛けずにスパム削減

Rgrey

● S25R + greylisting

● 怪しい接続に対してのみgreylistingを掛ける

● selective greylistingという名で手法として一般化

● S25R(の補集合)は汎用ホワイトリストという考え方

● S25RはDNSBLと比べ結果が揺れないという利点が大きい

● 95%弱のスパムを排除

Page 35: taRgreyでコストを掛けずにスパム削減

Starpit

● S25R + tarpitting

● 怪しい接続に対してのみtarpitを掛ける

● S25Rに引っかかった時の遅延が無くなる

● メールマガジン配信などが引っかかりやすい

● 中規模ISPで実際に運用しているもの

● 85%程度のスパムを排除

Page 36: taRgreyでコストを掛けずにスパム削減

taRgrey

● S25R + tarpitting + greylisting

● 怪しい接続に対してのみtarpitting

● S25Rに引っかかった時の遅延が無い

● 再送で救済する

● メールマガジンなども自動救済

● ほぼ誤検出はない

● 85%弱のスパムを排除

Page 37: taRgreyでコストを掛けずにスパム削減

taRgreyの目的

誤検出や遅延、負荷増なく

大部分のスパムを削減すること

● taRgreyだけで全スパムを削除することは求めていない

● スパム/ハム比のベースを下げられればよい

– 10分の1になるだけでも満足するユーザは多い

– 2次フィルタの精度を10倍に出来る

– 2次フィルタの閾値を下げて誤検出を減らせる

– 「ゴミ漁り」が楽になる

Page 38: taRgreyでコストを掛けずにスパム削減

SpamAssassin で閾値による誤検出・検出抜けの変化グラフ

http://www.slideshare.net/ttkzw/hbstudy20100821-spamassassin  滝澤隆史氏

閾値を 5→7 まで上げれば誤検出はほぼ無くなる

(0.04→0.00)

閾値を 5→7 まで上げても検出抜けは 2倍強程度

(1.6→3.5)

Page 39: taRgreyでコストを掛けずにスパム削減

運用実績と実際の設定

Page 40: taRgreyでコストを掛けずにスパム削減

検出率実績

● 69% スパム比率

● 93% S25Rのスパムマッチ率

● 91% tarpitingでの駆除率

● 85% taRgreyでの駆除率

● 64% S25Rにマッチせずに

   抜けたスパム率

2010/2時点

SA での判定を 100% と仮定して算出

Page 41: taRgreyでコストを掛けずにスパム削減

tarpitting時間に対する排除率

● 10秒や60秒など区切りとなる時間で落ちていく

● botの種類や運営者の数はそれほど多くないと予想できる

※tarpitting で排除できる全スパムを 100% としたときの時間による排除率

Page 42: taRgreyでコストを掛けずにスパム削減

中規模での長期運用実績

● 運用条件

– Starpit

– 2006/2月より運用開始(約4年半)

– 約 36,000アカウント 30メールサーバ

● 総誤検出数

– 延べ35ドメイン (ホワイトリスト追加数)

– ユーザからの問い合わせ数はその半数程度

– 全て再送有り (taRgreyでは救済可能)

Page 43: taRgreyでコストを掛けずにスパム削減

Starpitでの誤検出例

● ポイントがもらえるとかの怪しいメールマガジン

● 中国や東南アジアのメールサーバ

● Barracudaのセキュリティアプライアンスが60秒しか待たない

● ファイアーウォールが60秒以上の無通信で切ってしまう

Page 44: taRgreyでコストを掛けずにスパム削減

他での採用実績

● アプライアンス

– HDE tapirus

– A.T.WORKS Sentinel Beagle● 教育機関

– 大東文化大学

– 和歌山大学システム情報学センター

– 佐世保高専

– 尚絅学院大学

– 宇部工業高等専門学校

– 一橋大学 情報基盤センター

– 中央大学

等々… 公開されていて自分の知る限り

Page 45: taRgreyでコストを掛けずにスパム削減

現時点でのtaRgrey実装

● postfixのアクセスポリシーから

postgrey + taRgreyパッチ

● sendmailやpostfixのmilterから

milter-greylist, milter managerを利用

● qmail + tarpit before qgreylistパッチ

Page 46: taRgreyでコストを掛けずにスパム削減

運用の実際

● 詳しくはtaRgreyとStarpitの解説ページを参照http://k2net.hakuba.jp/targrey/ http://d.hatena.ne.jp/stealthinu/20060706/p5

● 弊社: taRgrey 125secの遅延、30分後以降に再送で救済95sec遅延、10分後以降に再送で救済とかで十分

● warnでフィルタ対象となる接続のIP/From/Toのログを残す

● check_recipient_access等のアクセス制御でユーザ毎に

フィルタを掛けることも可

● postfixにsleepパッチを当ててプロセス数増大を抑制する

(2~3倍のプロセス数増が1.5倍ほどで収まる)

Page 47: taRgreyでコストを掛けずにスパム削減

日本語スパム用個別フィルタ

● 素のpostfixやqmailで送られてくるものを防ぐ

● 対象は特に日本語スパム

● HELOのブラックリスト

– MTA自身のIPアドレス

– m20.mailyes.net

– SPK02

● NSのブラックリスト

– ドメインを大量に取って送ってくるもの

● taRgreyと個別フィルタで90%強くらいになる

Page 48: taRgreyでコストを掛けずにスパム削減

法的問題

● 電気通信事業者がフィルタを掛けることは大抵、電気通

信事業法(通信の秘密保護、利用の公平)に抵触します

● 運用にあたり総務省に確認を取りました

● Starpit/taRgreyは利用者の同意をとらなくても利用可能

2010/4から、ぷららがselective greylistingを導入しているのでもっとき

ついフィルタも許可されつつある

Page 49: taRgreyでコストを掛けずにスパム削減

総務省見解要約

● 電気通信事業者が、利用者の同意なく、発信者情報に基づいて通信を遅延させることは電気通信事業法に抵触する可能性が高い

● ゆえにStarpit/taRgreyは電気通信事業法に抵触する可能性がある

● しかし、サーバ負荷などによるメールの送受信時の支障を解消する目的で必要最小限の方法で遅延させる場合には、正当業務行為として許される

● よって選択的な遅延によるフィルタは

– 大量の迷惑メールによるサーバ負荷のためにメール送受信の遅延が生じることがないよう、迷惑メールが増えるのにあわせて、サーバの増強等を強いられていること

– この問題を解消するために必要かつ相当な方法を採用していること

から、電気通信事業法上の問題はない

Page 50: taRgreyでコストを掛けずにスパム削減

まとめ

taRgreyは…

● 誤検出や遅延が無いことを重視した設計

● 複数の手法を弱点をカバーし合うよう組み合わせている

● 検出率はそこそこ、だがそれで十分な場合も多い

● 2次フィルタと組み合わせて利用してもおいしい

taRgrey ぜひ試してみてください