Tor出口ノードの解説:常に脅威とは限らない
Tor出口ノードとは、Torサーキットの最後のリレーであり、Torユーザーがウェブサイトに接続したときに、サイトから見えるパブリックIPアドレスを持つサーバーです。出口ノードからのトラフィックは設計上匿名化されているため異質に見えますが、自動的に悪意があるわけではなく、そのように扱えば多くの正当な人々をブロックすることになります。
Torサーキットの仕組み
Torは3つのリレーからなるサーキットを構築します。エントリーガードはユーザーの実際のIPアドレスを知っていますが、宛先は知りません。中間リレーは隣接するリレーだけを知っています。出口リレーは最後の層を復号して宛先サーバーにリクエストを送るため、宛先は知っていますが、誰が要求しているかは知りません。各ホップで暗号化の層が1つ加わり、これがオニオンルーティングという用語の由来です。単一のリレーが、通信の両端を見ることはありません。
サイト運営者にとっての結果として、見えるクライアントのアドレスはユーザーのものではなく、出口リレーのものです。出口は同時に数千人のトラフィックを運ぶことがあるため、1つのアドレスが数分のうちに多くの国のサイトを閲覧しているように見えたり、そのアドレスの国や都市の検索結果が、訪問者ではなくリレーのホスティング場所を示したりします。位置情報が個人ではなくネットワークを表す理由については、IPの位置情報が人物について間違っている理由を参照してください。
Torを実際に使っているのは誰か
ジャーナリストは情報源を守るために使い、規制の厳しい国の人々はブロックされたサイトにアクセスするために使い、プライバシーを重視する個人は追跡を避けるために使います。こうしたユーザーはTorのトラフィックのかなりの割合を占めており、ネットワーク全体を拒否するルールは、彼らが選んだツールを理由に容疑者扱いすることになります。不正利用もあります。クレデンシャルスタッフィング、スクレイピング、スパムはいずれも、無料で簡単なTorを使えます。率直にまとめれば、このネットワークは玉石混交であり、フラグが示すのは経路であって意図ではありません。
Torトラフィックの検出
出口リレーはTorネットワークのディレクトリの一部として公開されているため、検出は現在の出口アドレスのリストに対する検索になります。問題は鮮度です。静的なTor出口リストがすぐに古くなる理由で述べたとおり、リレーは絶えず参加し離脱するためです。ipto のIP検索は is_tor フラグを返し、脅威フィードは6時間ごとに更新され、アドレスはVPN・Tor・プロキシチェッカーでテストできます。否定的な結果は、保証ではなく「Torとして知られていない」という意味です。
同じレスポンスには is_abuser、is_vpn、is_datacenter に加えて、asn と所有組織も含まれます。これらを併せて読むことが重要です。is_tor: true かつ is_abuser: false は、既知の悪い履歴のないプライバシー保護の経路を表しており、不正利用のフィードにも現れるTorアドレスとは異なる扱いが必要です。IP不正利用チェッカーは、そのレピュテーションが1つの情報源に頼るのではなく、複数の情報源でどのように裏付けられているかを示します。
出口リレーの運用
出口の運用者は特有の負担を負います。ユーザーが行ったことに対する不正利用の苦情が、運用者のアドレスに届くからです。多くの運用者は、リレーのIPアドレスに、それがTor出口であり運用者はトラフィックを管理していないと説明する通知を公開し、苦情はレジストリの連絡先データを通じて受け付けています。出口アドレスからの不正利用を調査している場合、IP whois検索が、そのブロックのレジストリ記録と不正利用の連絡先を示します。通常は、ホスティングプロバイダーか、承知のうえでリレーを運用している組織です。運用者は個々のユーザーが誰だったかを見られないため、そこにインシデントを報告するほうが、他のどこにエスカレーションするよりも有効です。
Torトラフィックへの賢明な対処
適切な方針は、何を守ろうとしているかによって決まります。公開されたニュースサイトには、Torの訪問者を他の誰かと区別して扱う理由はほとんどありませんが、支払いフォームやアカウント復旧のフローには、摩擦を加える強い理由があります。許可と拒否の間にある選択肢は次のとおりです。
- ログイン、登録、検索のエンドポイントで、Torアドレスにより厳しいレート制限を適用します。
- 機微な操作では、リクエストを拒否する代わりに、チャレンジを表示するか、第二要素を要求します。
- 閲覧のみは許可し、アカウント作成やチェックアウトを制限します。
- Torフラグ単独で動くのではなく、たとえば不正スコアチェッカーの0〜100の値のような、複合的な判断に取り込みます。
- 誤検知を見直せるよう、各判断につながったシグナルをログに残します。
規制や契約上の必要から、ライセンスや制裁のコンプライアンスなどのために、匿名化ネットワークのブロックが実際に必要になることもあり、それは正当なビジネス判断です。ただし、何も悪いことをしていない人々も排除されること、そして古いリストに基づくブロックは両方向で誤ることを承知のうえで、意図的に判断してください。