火曜日, 10月 16, 2007

Becky!でのフィルタリングの紹介記事を改訂

 「スパム対策技術」の目次ページからリンクしている随筆記事「Becky!でスパムメールを自動的に90%以上捨てる方法」を改訂した。
 この記事は2005年1月に書いたものである。そのころは、勤務先のメールサーバのsendmailがReceivedヘッダに送信元ホストの逆引き名を記録してくれなかったので、S25Rを応用した正規表現でHELOアドレスを検査して約60%、HTMLメールを捨てるフィルタを加えて約80%、さらに、怪しい単語(「viagra」など)を引っかけるフィルタを加えて約90%をごみ箱行きにしていた。そのノウハウをベースに書いたものだった。
 その後、2006年8月から勤務先のメールサーバで逆引き名が記録されるようになったので、実験の結果、改良した簡易一般規則を作り、ブラックリストと併せて約97%のスパムをごみ箱行きにできるようになった。そのノウハウを2007年1月に追記していた。
 しかし、古い情報に新しい情報を追記することで内容がごちゃごちゃし、読者には「要するにどう設定するのがよいのか」がわかりにくくなっていると思った。そこで、改良前の簡易一般規則などの古い情報を捨ててしまい、現時点で役立つ情報だけに絞って書き直した。
 Receivedヘッダに逆引き名が記録されないケース(記事ではタイプCと称している)の設定方法の説明は思い切ってやめて、「ここでご説明する方法ではあまり効果が得られません。あきらめてください。m(_"_)m」と書いた。最近では、HTMLメールを捨てるフィルタも、怪しい単語を引っかけるフィルタもあまり効果が上がらないと思われるからである。おそらくこのケースで判別率90%以上を達成することはできなくなっていると思う。逆引き名を手がかりにできないケースでは、ベイジアンフィルタを使った方がよいだろう。

0 件のコメント: