1. はじめに

URI免疫化 (URI Immunization)とは、新しいウェブスパム防御の考え方であり、実際に台風への眼サイトにてトラックバックスパムの防御策として利用しているものである。

2. ポイント

この方法の基本方程式は以下の式である。

URI = 固定領域 + 可変領域

またこの方法のポイントは、以下の3点にまとめることができる。

第一のポイントであるが、スパムを防御するための方法としてURIを変化させることが有効なのは、例えばトラックバックURLを例にすると、スパムがトラックバックURLを取得する時間と、スパムがトラックバックURLを攻撃する時間とに、時間差があるということが条件である。人間ならば両者の時間はほぼ一致することが期待できるが、スパムの場合は両者に時間差が生じることが多い。というのも、まずトラックバックURLを取得し、データベース化してから攻撃をしかける例が多いためである。この時間差を利用してトラックバックURLを変化させてしまえば、スパムはトラックバックURLを利用できずに攻撃が失敗する。これがアイデアの核心である。

第二のポイントは、不特定多数を相手にした参加型システム(例えば誰からもトラックバックを受け付けるブログ)などにおいて問題になる。トラックバックURLがいつも変化しているということは、最新の有効なトラックバックURLを相手に伝えなければならない。しかし相手に伝えるためにその情報を公開すれば、同じ情報はスパムも読み取ることができてしまう。そこで、人間には読み取ることができるけれどもスパムには読み取りにくいという形で、最新のトラックバックURLを相手に伝えていくことが必要になる。そのための戦略として、以下の二つを提案する。

  1. スパムには読み取りにくい形式で情報を提示する(例えばCAPTCHA)。
  2. トラックバックURLを変化させる時間間隔を短縮することで、スパムが情報解読に使える時間に上限をはめる。

スパムに読み取りにくい形式としては、CAPTCHAほど大げさなものでなくても、HTML文書の内容を正しく解釈しないとトラックバックURLが取得できない、といった簡単な方法で十分である。例えば、トラックバックURLをHTML文書中に分離して表示したり(同様の方法はメールアドレスでよく用いられている)、Javascriptを使ってトラックバックURLを動的に組み立てたり、とにかく解析に手間がかかるような方法であればよい。トラックバックURLを変化させる頻度を増していけば、スパムが解析に利用できる時間の上限がさらにきつくなっていく。ゆえに泥棒の5分ルール(鍵を開けるのに5分以上かかれば泥棒はあきらめる)と同様に、理論的には開けられるけれども実際にはほとんど開くことはない鍵を作り出すことができる。

第三のポイントが示すように、この防御策を破る方法はいくらでもある。例えば人海戦術でトラックバックを送る相手からのスパムあるいは意図的な攻撃は防げない。つまり理論的にスパムを防げることが保証された方法ではない。しかし現実的には、この防御策を破ることのできるスパムは少ない。それは主にコストという経済的な理由による。したがって、この防御策が破られることが現実的に少なくなり、世の中のほとんどのサイトにおいてはこれでも十分な効果を発揮すると言えるのである。

ただし第二の点に関して一つだけ注意点がある。機械可読性の高いメタデータは、スパムにとっては格好の「餌」になってしまうという点である。例えばTrackback Auto Discoveryのようなメタデータがあれば、スパムはそれを読み取って即座に攻撃を開始できる。これでは時間差が発生せず、本手法は有効ではなくなる。そこで考えるのは、こうした機械可読性の高いメタデータの提供は、特にそれがスパムの標的になりうる場合にはややナイーブすぎる方法なのではないかということである。スパムがうごめく環境でのメタデータについては再検討が必要かもしれない。

さらなる発展形としては、過去の(有効期間を過ぎた)トラックバックURLを「おとり」として利用し、そうした無効なトラックバックURLを叩いたアクセス元(IPアドレス)を、自動的に禁止リストに入れてアクセスを遮断するという利用法が考えられる。こうすれば、わざわざ手間をかけてアクセス元をモニタする必要も大幅に減らすことができる。また、過去に出現したどのトラックバックURLを叩いているかを記録することにより、スパム側がそのURLを取得した時間と攻撃した時間との時間差を計測できるので、スパムがどの程度のスピードで情報を利用しているのかを監視することも可能である。これはトラックバックURLの更新頻度を自動的に調整する目的に使えるだろう。

本システムではそこまでのメカニズムはまだ必要となっていないが、このようなより適応的な免疫システムへの発展は面白い将来課題である。

3. 最新状況

4. 正誤表

参考文献のウェブスパムをかわすためのURI免疫化は短時間でまとめたため、説明不足の点や誤解を招きやすい点、また以下の誤りがあることに注意。

  1. 図1のキャプションは、正しくは『「トラックバックURL」がインポートURL、「トラックバックを見る」がエクスポートURL』です。

上記の説明不足については、URI免疫化:参加型システムにおけるスパム避けの一手法である程度は修正されている。

5. 参考文献(全リスト

  1. 北本 朝展, "URI免疫化:参加型システムにおけるスパム避けの一手法", 電子情報通信学会 Webインテリジェンスとインタラクション研究会, No. WI2-2006-73, pp. 45-50, 2006年11月 [ 概要 ] [ Paper ]
  2. 北本 朝展, "ウェブスパムをかわすためのURI免疫化", NIIテクニカル・レポート, No. NII-2006-010J, pp. 1-12, 2006年7月 [ 概要 ] [ Paper ]