静的なTor出口ノードIPリストはなぜすぐ古くなるのか
Tor出口ノードのIPリストとは、Torトラフィックがネットワークから出て一般のウェブサイトに到達する際の公開アドレスを並べたものです。一度保存したコピーは、その瞬間から劣化が始まります。出口リレーはボランティアによって運用されており、参加、離脱、アドレス変更が絶え間なく起こるため、ファイルに固定したりファイアウォールのルールにハードコードしたりしたリストは、数時間のうちに実態からずれていきます。
リストがこれほど速く変化する理由
Torネットワークは約1時間ごとにコンセンサスを公開しており、そこには現在稼働しているリレーと、Exitフラグを含む各リレーのフラグが記載されています。リレーを運用しているのは個人、大学、非営利団体、ホスティング契約者などで、その多くはレンタルの仮想サーバー上で動いており、解約、再プロビジョニング、プロバイダー間の移転が行われます。リレーが停止すると、そのアドレスはホスティングのプールに戻り、まったく無関係の顧客に割り当てられることがあります。新しい出口が現れても、再取得するまではお手元のコピーには載っていません。
出口ポリシーも事態を複雑にします。リレーは特定のポートに対してのみ出口となることがあり、運用者はアドレスを変えずにポリシーだけを変更できます。アドレスだけを記録するリストではこうしたニュアンスを表現できないため、各IPの役割を過大に見積もると同時に、新参のリレーを見逃してしまいます。
古いリストで何が起こるか
失敗のパターンは2つあり、どちらもコストになります。1つ目は偽陰性です。起動したばかりの出口がリストになく、別扱いにするつもりだったトラフィックがフラグなしで通過してしまいます。2つ目は偽陽性で、こちらのほうが通常は被害が大きくなります。以前は出口だったアドレスが、いまは通常のホスティング契約者、小規模事業者、家庭の回線になっているのに、固定されたリストはそれを Tor とラベル付けし続けます。実際には何もしていない正規のユーザーがチャレンジやブロックを受けますが、設定上はルールが正しく見えるため、誰も気づきません。
古いリストは、抜け漏れを補うためにレンジ全体をブロックするという誘惑も生みます。ホスティングレンジ内でリレーの隣にあるアドレスは無関係のサービスであることが多いため、偽陽性がさらに増えます。Torフラグだけでアクセスを拒否するのが妥当でない理由についてさらに知りたい方は、Tor出口ノードの解説をご覧ください。
より新鮮なデータを使うアプローチ
解決策は巧妙なマッチングではなく、短い更新間隔と、古いエントリを失効させる仕組みです。スケジュールに従ってリストを取得し、追記し続けるのではなくアトミックに置き換え、データの鮮度も判断材料の一部として扱います。最後に成功した更新が許容範囲より古い場合は、ハードブロックではなく、チャレンジなどのより穏やかな対応に倒してください。
ipto はこれをサービスとして提供しています。VPN、Tor、不正利用の脅威フィードは6時間ごとに更新され、IPとASNのデータセットは毎日更新されます。IP検索は is_tor を is_vpn、is_abuser、is_datacenter とともに返すため、リクエストごとに最新の状態を取得でき、ファイルを自分で保守する必要はありません。VPN・Tor・プロキシチェッカーでアドレスを試したり、脅威フィードのページで公開リストを閲覧して、現在のデータがどのようなものか確認したりできます。
6時間であってもリアルタイムではありません。この点は正直にお伝えしておくべきでしょう。1時間前に起動したリレーはまだデータに含まれていない可能性があり、停止したリレーも次の更新までフラグが残ることがあります。結果が陰性であることは「Torとして既知ではない」という意味であり、「確実に問題ない」という意味ではありません。
Torデータに過度に依存しない使い方
リストは常に多少の誤りを含むため、誤差を許容できる判断設計にしてください。Torフラグ単独で動くのではなく、他の証拠と組み合わせます。IP不正利用チェッカーは複数のフィードを突き合わせるため、プライバシーを重視する訪問者と、実際に不正な挙動をしているアドレスを切り分けるのに役立ちます。また、不正スコアチェッカーは複数のシグナルを0〜100の単一の値にまとめるので、しきい値を設定して利用できます。
- ルックアップのキャッシュは、数日ではなく、フィードの更新間隔より短い期間にとどめる。
- 恒久的なブロックよりも、チャレンジ、レート制限、追加の認証ステップを優先する。
- どのシグナルが対応のきっかけになったかを記録し、後から偽陽性を見直せるようにする。
- 以前ブロックしたアドレスを再確認する。IPに関する過去の判断は、もう当てはまらない場合がある。
要点はシンプルです。Torネットワークは動き続ける標的であり、Torリストで有用なのは、その大きさではなく鮮度です。静的なスナップショットは過去の記録として扱い、更新頻度が明示されていて根拠を持って判断できるデータを選んでください。