土曜日, 1月 13, 2007

厳しすぎる防御

 ロシアの人からメールをいただいたので(前回)、1月10日の夜、返事を出した。メールドメインはmail.ruである。
 「550」で蹴られた。

<***@mail.ru>: host mxs.mail.ru[194.67.23.20] said: 550 Access from ip
    address 219.163.213.18 blocked. Visit
    http://win.mail.ru/cgi-bin/support_bl?ip=219.163.213.18 (in reply to RCPT
    TO command)

 示されているURLにアクセスしてみたら、私のサーバのIPアドレスがブラックリストに登録されていると表示されていた。入力フォームがあり、ブラックリストから削除してもらうためにはIPアドレスの役目(mission)を書かなければならないとのことだったので、「このIPアドレスは、個人インターネットサイト、gabacho-net.jpドメインのものです。このホストは、不正メールを送信したことはありません」と英語で記入した。
 すぐに通知メールが来た。ロシア語と英語が併記されていた。

Hello!

Your IP has been removed from our black list. Access will be
opened in a few minutes.

With best regards, Mail.Ru support team

 数分後にアクセスがオープンされると書いてあったが、翌1月11日の朝まで待っても送信できなかった。
 11日、勤務先から返事を送ってみた。やはり拒否された。
 24時間を超えた12日の朝になっても、返事の再送信は拒否された。もうあきらめようかと思ったが、12日の夜、再度win.mail.ruにアクセスして、もう一度入力フォームに入力した。
 今度はすぐには通知メールが来なかったが、翌13日の朝に受信。12日の23時58分に着信していた。今度は文面が少し違っていた。

Hello!

Your IP will be added to our white list.
Access will be opened in a few days.

With best regards, Mail.Ru support team

 前回は「ブラックリストから削除されました(現在完了形)」、今回は「ホワイトリストに登録されます(未来形)」。アクセスがオープンされるのが、今度は「数日後」と書いてあったのでびっくりしたが、すぐに返事を再送信してみたら、今度はうまく送信できた。もしかしたら、2回目の申請は必要なくて、1回目の申請を受け付けてから手動でホワイトリスト登録するまでに48時間以上かかっただけかもしれない。
 あらかじめ「白」とわかっていないIPアドレスは全部「黒」扱いして、メールをエラーリターンさせる。そして、送信者または送信側のメールシステム管理者に申請させて、人手で審査してホワイトリスト登録し、それから再送信させる。これなら、mail.ruドメインのユーザーはスパムやウィルスメールとはほとんど無縁であろう。
 しかし、インターネットの仕組みをよく知らないユーザーは、エラーリターンを受けてどうすればいいのか途方に暮れて、送信をあきらめてしまうかもしれない。また、mail.ruドメインのユーザーがオンラインショッピングをした時、確認メール送信サーバの管理者はいちいちホワイトリスト登録を申請したりはしないだろう。だから、mail.ruドメインのユーザーが受けたかったメールを受けられないという事態が頻発するに違いない。
 ここまでの防御はやりすぎである。

localhost.localdomain

 論文(英語)を読んでくれたロシアの人からメールをいただいた。「localhost.localdomain」というHELOグリーティングが非常に多いので、これもsmtpd_helo_restrictionsパラメータで拒絶した方がよいと書かれていた。
 確かに、私もそのような不正メールアクセスを発見したことがある。しかし、宛先サーバのIPアドレスまたは受信者のドメイン名を通知するHELOグリーティング(8月27日「Illegal HELO address」)とは違って、「localhost.localdomain」を名乗るSMTPアクセスが必ず不正メールだという確証はない(正当だけれどもHELOアドレスの設定の不備なメール送信サーバがあるかもしれない)ので、この拒絶は設定しない方が安全だと思う。
 とはいえ、「your good guide」とほめ言葉を書いてくれた人に反論めいたことは書きたくなかったので、「サジェスチョンありがとう」の返事を出した。
 実は、この返信を送るのにえらく苦労することになるのだが、それについては次の記事で。

Becky!用ブラックリストを追加

 随筆記事「Becky!でスパムメールを90%以上捨てる方法」に改良型の正規表現について追記したと報告したが(1月7日「遅まきながら」)、簡易一般規則に引っかからないドメインのブラックリストの紹介を忘れていたので、さらに追記した。
 9月26日「Becky!でのフィルタリング」では3個の項目を紹介したが、今は勤務先では6個の項目を登録しているので、それらを掲載した。

from .*\(.+\.(adsl|internetdsl|sdi)\.tpnet\.pl .* by mail\.example\.jp
from .*\(user.*\.mindspring\.com .* by mail\.example\.jp
from .*\(.+\.[a-z]\.pppool\.de .* by mail\.example\.jp
from .*\([^.]*[0-9]+\.[^.]*[0-9]+\.maxonline\.com\.sg .* by mail\.example\.jp
from .*\(xdsl.*\.dialog\.net\.pl .* by mail\.example\.jp
from .*\(.+\.[^.]*[0-9]+-[0-9]+-[0-9]+\.noos\.fr .* by mail\.example\.jp

(受信メールサーバのMTAがqmailの場合は、「from 」の次の「.*\(」の4文字を削除してください。)

 maxonline.com.sgはS25Rの一般規則のルール5、noos.frはルール4に引っかかるが、簡易一般規則では見逃されてしまうので、ブラックリストに追加している。
 上記の項目は、受信したスパムが多かった順に並べている。2006年8月23日から2007年1月11日までに受信したスパムのうち、上記のドメインからのものの通数は次のとおりであった。

tpnet.pl:167通
mindspring.com:48通
pppool.de:20通
maxonline.com.sg:8通
dialog.net.pl:6通
noos.fr:5通

 簡易一般規則に引っかからないドメインの中では、tpnet.plが相変わらずダントツである。2006年7月ころにはdialog.net.plからのスパムがずいぶん多かったが(9月16日「ブラックリスト」)、なぜか最近は減っている。

日曜日, 1月 07, 2007

ビジネス案件

 S25R方式は実装が簡単なので、メールサーバを自営で運用しているサイトでは簡単に導入できるものと思っていたが、そうでもないケースがあることがわかった。
 数十人規模の会社の人から相談を受けた。スパムの受信があまりに多くて、連休を挟むとメールスプールがあふれてサーバが障害を起こすほどで困っている。しかし、サーバの管理ができる人は会社の本業に多忙で、なかなか抜本的な対策をとれない。そこで、お金がかかってもいいから対処法を具体的に教えてほしいとのことだった。
 具体的にと言われても、「この順序でコマンドを打てばいいです」と答えることはできない。すでにPostfixを使っていればまだしも楽だが、その会社のMXはsendmailを使っている。Postfixはsendmailからの移行がやりやすいようにできているとはいえ、現状のサービスに悪影響がないことを確認するためには、システム構成全体を見る必要がある。とても私一人がボランティアでちょこちょことやってあげられるような簡単な仕事ではない。
 サポート会社に依頼することを勧め、結果的に私の勤務先の子会社に案件を紹介した。私の見積もりでは、システム構成の調査、システム設計、サーバの再構築、RgreyまたはtaRgreyの設定、動作確認、その後の運用のためのドキュメントの提供に、上級技術者1人がかかりきりになって2週間。費用は約50万円。案件の紹介先の子会社でも「そんなものだろう」と言っていた。私の友人は「うちなら60万円もらう」と言っていた。相談してきた人は「そんなにかかるのですか」とおっしゃったが、技術者の派遣には従業員の税込み給与の3倍くらいの料金をいただかないと事業経営が成り立たないので、そのくらいにはなる。
 このビジネス案件の契約が成立するかどうかはまだわからない。サーバの再構築を委託するために約50万円払うか、自社の社員を会社の本業から一時的に離してサーバの再構築にあたらせるかは、お客様の判断しだいである。あるいは、スパムによるスプールあふれを避けるためだけなら、ディスクを増設する方が安いかもしれない。
 このようなビジネス案件の潜在需要は多いだろうか。いや、それほどないだろう。自営のサーバを持ちながら、サーバ管理者がサーバの管理に労力を割くことができず、かつサーバ管理者が他人によるサーバ再構築を受け入れるというケースは少ないと考えられるからである。自社のサーバの管理に社員がかかりきりになれないという事情のお客様のためには、むしろ、スパムの排除を売りにしたホスティングサービスの方がビジネスチャンスになるかもしれない。

遅まきながら

 随筆記事「Becky!でスパムメールを自動的に90%以上捨てる方法」に、2006年9月23日「Becky!でのフィルタリング」で紹介した改良型の正規表現について追記した。

木曜日, 1月 04, 2007

奇跡的な阻止率

 2006年12月に受信したスパムは1通だけだった。宛先の正しいスパムを送り込もうとしたホストは202個。ここから計算した阻止率は99.5%。7月には97.4%(9月15日「宛先の正しいスパムの阻止率」)、勤務先でのBecky!によるフィルタリングの判別率も97%くらい(9月23日「Becky!でのフィルタリング」)なので、ちょっとびっくりする値であった。11月を振り返ってみたら、192個中3個のホストからスパムを受信したので、阻止率は98.4%。これも相当高い値だった。
 12月に阻止し損ねたスパムの送信元はd127.dana01.swarthmore.edu。エンドユーザー回線っぽい逆引き名だが、ルール5が上位3階層を検査から除外するので、引っかからなかった。つまり、12月には、宛先の正しいスパムアクセスのうち、サーバっぽい逆引き名のホストからのものは一つもなかったのである。
 乗っ取られるサーバが減ったからだろうかとも思ったのだが、そうも言えないような気がする。勤務先では、受信するスパムが毎月順調に(^^)増加しており(12月には、御用納めの日までに受信したスパムが2000通を超えた)、97%強という判別率にほとんど変化がないからである。もう少し様子を見なければなんとも言えない。もしかしたら、99%を超える高い阻止率は一時期のまぐれなのかもしれない。
 しかし、ともかく、スパム対策をしていない勤務先ではスパムの受信が増え続け、スパムをはね返している自宅サイトでは減り続けている。強固な防衛が平和をもたらすのは確かなようである。