水曜日, 6月 25, 2008

「阻止率97%以上」

 「スパム対策技術」の目次ページに記載しているS25R方式の要点に

効果:
●スパムとウィルスメールの全アクセスに対する阻止率約99%。
●宛先の正しいスパムの阻止率約97%。

と書いていたが、「宛先の正しいスパムの阻止率97%以上」と書き直した。宛先の正しいスパムの阻止率が1ヶ月ほどの統計で97%を下回ったことはほとんどなく、むしろ最近では98%くらいになることが多いので、効果をよりアピールする表現にした。
 でたらめのアドレスに宛てられたものも含む不正メールの全アクセスに対する阻止率は、99%を下回ることがあるかもしれないが、それでも98%くらいにはなっていると思う。S25R方式の効果は衰えていないので、「阻止率99%のスパム対策方式の研究報告」という論文のタイトルを今さら取り下げる気はない。おとりのアドレスを拾わせてわざとスパムアクセスを増やして統計をとった結果、2004年4月に阻止率99.1%になったというのは嘘ではないのだし。

日曜日, 6月 08, 2008

バウンシングバック認証はタブーの技術

 届いたメールに対して「メールを送ったのは本当にあなたですか?」と確認を求めるメールを自動返送するバウンシングバック認証方式は、なにもOptPlusの開発元のヌリビジョン社の発明ではない。昔から使われている工夫である。
 たとえば、自動登録方式のメーリングリストでは、参加希望者が登録要求メールを送ると、登録確認要求メールが自動返送されてくる。そこにはパスワードが書かれていて、それをもう一度送信すると登録される。
 このバウンシングバック認証は、誰かが他人のアドレスをかたってメーリングリストに登録するといういたずらを防ぐためである。アドレスをかたられた被害者には、身に覚えのない登録確認要求メールは迷惑なものには違いない。しかし、これをしないことには、被害者は、望んでもいないメーリングリストの配信メールを多量に受けるという、より大きな迷惑を受けてしまう。被害者を大きな迷惑から守るために、メーリングリストの自動登録のバウンシングバック認証は必要なのである。そこが、スパマーにアドレスをかたられた被害者にとってはただ迷惑なだけのOptPlusのバウンシングバック認証要求とは異なる。
 メーリングリストの自動登録に昔から使われているバウンシングバック認証方式を、自分がスパムを受けないための対策に使えないかというアイデアを思い付いた人は、おそらく何人もいるだろう。しかし、メールシステムを理解している人はすぐにいろんな問題に気付く。

●メールトラフィックを増やすことになる。
●送信者に手間をかけさせるのは失礼ではないか?
●送信者が認証手続きをしてくれなかったら、正当なメールを見逃すおそれがある。
●自分が送信したメールのエラー差し戻しに対して認証要求をかけたら、エラーに気付かない。認証要求をかけないようにしたら、エラー差し戻しを装ったスパムを防御できない。
●スパマーに送信者アドレスをかたられた被害者に届くバウンシングバック認証要求は迷惑メールになる。
●送信側でもバウンシングバック認証方式をとっていたら、バウンシングバック認証要求のメールループが起こるから、その防止策も考えなければならない。
●送信側でもバウンシングバック認証方式をとっていたら、互いに相手からのメールに気付かないデッドロック状態(やぎさんゆうびん問題)に陥る。

これほどいろんな問題が懸念されることに気付いたら、「これじゃ使い物にならない」と思うだろう。
 メーリングリスト登録やその他のサービスの自動受付プログラムならともかく、人に宛てられたメールにバウンシングバック認証方式を適用することは、メールシステムを知る技術者にとってタブーだったのである。だから、スパム対策の研究者の間で議論にもなっていなかったのである。そのタブーを犯したのがOptPlusである。すべての問題を解決してタブーを破ったのなら賞賛もしようが、本質的に避け得ない問題をバウンシングバック認証方式は内在しているのである。
 企業の経営者層の人は、メールシステムをよく知らなくてバウンシングバック認証方式の問題点に気付かず、「OptPlusは画期的なスパム対策製品」という宣伝を鵜呑みにしかねない。バウンシングバック認証方式のタブーに漠然と気付いていながら、それを経営者層にうまく説明できない技術者は、OptPlusの導入を阻止できないかもしれない。そうなると、宛先の不正なバウンシングバック認証要求メールで他人に迷惑をかけ、また、ユーザーは、バウンシングバック未認証を心配してペンディングキューを見なければならないメーリングリストに投稿する時にはFromヘッダのアドレスをエクスパンションアドレスに変えなければならないという不便を強いられるのである。
 バウンシングバック認証方式の問題に漠然と気付くのにとどまらず、緻密に考察して指摘してきたのは、おそらく私だけだろう。メールシステムをよく知らない人たちを、OptPlusを買わないよう説得するため、また、簡単で効果が高くて無料で使えて、すでに多くのサイトで使われている実績のあるS25R方式という対案があることを説明するために、2007年5月14日「バウンシングバック認証という無茶なやり方」に始まる私のバウンシングバック認証方式反対キャンペーンの一連の記事が役立てば幸いである。

金曜日, 6月 06, 2008

メーリングリストはOptPlusの鬼門

 もういいかげんOptPlus批判はやめようかとも思っていたのだが、バウンシングバック認証方式の問題点に次から次へと気付いてしまうので、やはり書いておくことにする。
 バウンシングバック認証方式反対キャンペーンの最初の記事である2007年5月14日「バウンシングバック認証という無茶なやり方」では、
「なぜ無茶か。メーリングリストや、メールマガジンや、オンラインショッピングの確認メールのことをちゃんと考えているとは思えないからである。」
と書いた。しかし、これは誤りだった。バウンシングバック認証にかけないように登録したエクスパンションアドレスという別アドレスで受信する方法が用意されている。
 ただ、メーリングリストが、登録要求メールを送るとそのFromヘッダのアドレスへ登録確認要求メール(「本当にあなたが登録要求を送ったのであれば、確認のためのメールを再度送ってください」と案内するメール)が自動返送されるという仕組みである場合、それをバウンシングバック認証にかけずに受信するために、Fromヘッダのアドレスをエクスパンションアドレスに変えて登録要求メールを送る必要がある。これは面倒なことである。そのことを2007年5月27日「バウンシングバック認証はやはりやっかい」に書いた。
 今回述べるのは、問題はそのような面倒さにとどまらず、「OptPlusユーザーがメーリングリストに参加することでスパムがバウンシングバック認証をすり抜けるリスクがある」ということである。「風が吹けば桶屋が儲かる」みたいな話だが、考えていくとちゃんとそういう結論になる。

 まず、Fromヘッダのアドレスをエクスパンションアドレスに変えて登録要求メールを送ったとする。その理由は、上述のように、自動返送される登録確認要求メールをバウンシングバック認証にかけずに受信するためということにしておく(別の理由もあるのだが、それについては後述する)。
 そして、登録確認要求メールの指示に従って登録手続きが完了したとする。登録されたアドレスは、OptPlusユーザーの通常のアドレスではなく、エクスパンションアドレスである。
 こうなると、メーリングリストに投稿する時には毎回Fromヘッダをエクスパンションアドレスに設定しなければならない。なぜなら、たいていのメーリングリストでは、部外者からの不正な投稿を防ぐために、登録されたアドレスでしか投稿を受け付けないようになっているからである。
 つまり、そのOptPlusユーザーが投稿メールのFromヘッダによってメーリングリストメンバーに公開するアドレスは、通常のアドレスではなく、エクスパンションアドレスになる。
 さて、ここで、そのメーリングリストのメンバーの誰かのPCがウィルス感染して(あるいはスパイウェアによって)、メーリングリストで配信されたメールから拾い出されたメールアドレスがスパマーに漏洩したとしよう。そうなると、スパマーはOptPlusユーザーのエクスパンションアドレスに向けてスパムを送ってくる。そのスパムは、バウンシングバック認証にかからずに通過する。つまり、エクスパンションアドレスでメーリングリストに参加することで、スパムがバウンシングバック認証をすり抜けて着信するということになるのである。
 「スパムを1通でも受けたら返金します」と豪語しているOpt Plus ASPは、このような場合に返金してくれるだろうか。おそらく返金に応じてはくれないだろう。「エクスパンションアドレスを他人に広く公開したユーザーに責任がある」と言うだろう。そうせざるを得ない仕組みであるにもかかわらず。

 では、通常のアドレスでメーリングリストに参加したらどうだろうか。自動返送される登録確認要求メールに対してバウンシングバック認証要求メールが自動返送される。それがメーリングリスト管理者に迷惑になるという問題はさておき、OptPlusユーザーが登録確認要求メールをペンディングキューから救済すれば、登録手続きを完了することができる。
 その後、いろんな人がメーリングリストに投稿したメールが配信されてくる。それがまたバウンシングバック認証にかけられる。
 ここで、メールをペンディングキューから救済した時にホワイトリスト登録されるのが、MAIL FROMコマンドで通知される送信者アドレスなのか、Fromヘッダのアドレスなのかが問題になる。個人がメーラーで送信するメールでは両者は同じである。しかし、メーリングリストで配信されるメールの場合は、Fromヘッダは投稿者のアドレスのままだが、送信者アドレスは、「owner-メーリングリスト名」、「メーリングリスト名-admin」などのような、メーリングリスト管理者のエイリアスに書き換えられる(これはエラーバウンスの返送先になる)。
 ホワイトリスト登録されるのが送信者アドレスであれば、問題はさほど大きくない。バウンシングバック認証要求メールがメーリングリスト管理者へ飛ぶが、いったんペンディングキューから救済すれば、その後は、そのメーリングリストで配信されたメールは、誰が投稿したものであっても受信できるようになる。
 ところが、ホワイトリスト登録されるのがFromヘッダのアドレスだとしたら大変である。すべての投稿者にバウンシングバック認証要求メールが飛ぶことになる。それを受けた投稿者は、「私はメーリングリストに投稿したのであって、あなた個人のことは知らない。メールを疑うなら勝手にしろ」と思ってバウンシングバック認証に応じない可能性が高い。OptPlusユーザーは、いろんな投稿者からの投稿メールをいちいちペンディングキューから救済しなければならない。
 あらかじめメーリングリストのメンバー全員のアドレスをホワイトリスト登録するのは大変である。第一、登録メンバーのアドレスリストは重要な個人情報である。メーリングリスト管理者がおいそれと開示するわけがない(たとえば同窓会のような、メンバーの限定されたメーリングリストならともかく、誰でも参加できるオープンなメーリングリストでは)。
 というわけで、結局のところ、OptPlusがFromヘッダのアドレスをホワイトリスト登録する仕組みであれば、メーリングリストにはエクスパンションアドレスで参加せざるを得ないということになるのである。

 OptPlusユーザーがメーリングリストに参加しようとすると、これほどまでにやっかいで、しかも、エクスパンションアドレスが漏洩してスパムを受けてしまうリスクがあるのである。それでもOptPlusを買いますか?
 S25R方式を知らずにこの記事にたどり着いた人のために説明しておくと、S25R方式とは、送信元IPアドレスの逆引き結果から送信元をエンドユーザーコンピュータと推定した場合に再送要求を返して受信を拒否することにより、ボットからの再送しないスパムアクセスを阻止する(メールサーバを誤判定した場合は再送アクセスが来るので、ホワイトリストで救済する)という単純な方法。Postfixの設定だけで実現でき、97~99%のスパムを阻止できる。メーリングリストへの参加だろうと何だろうと、ユーザーにとってメールの送受信方法は対策前と何も変わらない。

(OptPlusとバウンシングバック認証方式に関するすべての記事へのリンクはこちらの記事にあります。)