iPhoneでトラッカーをブロックする方法(広告だけではありません)
iPhoneで広告をブロックする方法を調べている人の多くは、それで問題がすべて解決すると思い込んでいます。実際は違います。ページから広告が完全になくなっていても、あなたが何をクリックし、どれくらい滞在し、他にどんなサイトを訪れたかを記録するスクリプトに、その訪問がまるごと引き渡されていることがあります。広告をブロックすることとトラッカーをブロックすることは別の仕事で、しかも2つ目のほうはほとんど目に見えません。
トラッカーとは本当は何なのか
広告は目に見えるものです。トラッカーは目に見えないものです。小さなスクリプトやピクセル、Cookieで、その唯一の仕事はあなたの行動をどこかに報告することです。たいていは広告のプロファイルを作るためか、分析ダッシュボードにデータを送るためです。
よくある形はこうです。
- フィンガープリンティングスクリプト:画面サイズ、フォント、バッテリー残量、タイムゾーンといった端末情報を読み取って組み合わせ、Cookieを消しても付きまとう識別子を作り出します
- サイトをまたぐCookie:無関係なドメイン同士で広告ネットワークがあなたを認識できるようにします
- アナリティクスビーコン:ページの読み込みやスクロール時に発火する小さなリクエストで、訪問したという事実だけを記録します
- セッションレコーダー:タップやスクロール、時には入力してから消した文字まで記録し、サイト運営者が後から再生できるようにします
- データブローカースクリプト:こうしてできあがったプロファイルを、聞いたこともない企業に売り渡します
これらはどれもバナーや動画としては表示されません。たいていページの読み込みが完了する前に静かに動いていて、広告ブロッカーを入れたからといって止まるものでもありません。
広告だけをブロックしてもトラッキングが止まらない理由
広告ネットワークとトラッキングネットワークは重なる部分もありますが、同じリストではありません。広告サーバーを捕捉するために作られたフィルターリストは、目に見える広告素材を配信するドメインを認識します。ところが多くのトラッカーはまったく別のドメイン、アナリティクスプロバイダー、セッション記録サービス、データブローカーの上で動いていて、広告を1つも配信しません。ただ見ているだけです。
だからこそ、バナーもポップアップも自動再生の動画もない、一見きれいなページの裏で6つ7つのトラッキングリクエストが動いていることがあります。ブロッカーが持っているリストが広告向けにしか調整されていなければ、こうしたリクエストはそのまま素通りします。
Safariがすでにやってくれていること
iOSには知っておく価値のある設定が2つ標準搭載されていて、まだオンにしていないならどちらもオンにする価値があります。
「サイト間トラッキングを防止」は設定 > アプリ > Safari にあり、iOS 14以降デフォルトでオンになっています。あるサイトが仕込んだCookieを別のサイトが読み取って行動をつなぎ合わせる仕組みを止めます。Safariはこれとは別に、バックグラウンドで常にインテリジェントトラッキング防止を実行していて、特定のトラッカーが存続できる期間を制限しています。これは本物のプライバシー機能ですが、対象は明確に限られています。Cookieベースのトラッキングだけを標的にしていて、フィンガープリンティングスクリプトやアナリティクスビーコン、セッションレコーダーには効きません。どれもこの設定が塞ぐCookieの仕組みに依存していないからです。
「IPアドレスを隠す」は、iCloud+をお使いであれば設定 > (お名前) > iCloud > プライベートリレーにあるPrivate Relayの一部です。Safariの閲覧を2つのリレー経由で流すことで、サイトがあなたのIPアドレスを見たり他の識別情報と組み合わせたりできなくなります。IPベースのトラッキングに対しては意味のある層ですが、フィンガープリンティングやページ内のスクリプトには効かず、有料のiCloud+プランなしでは利用できません。
どちらの設定も役に立ちますが、どちらも完全な答えではありません。Appleもそう主張してはいません。
専用のプライバシーブロッカーが埋めてくれる範囲
これこそが、Safariのコンテンツブロッカー拡張機能が埋めるために作られた隙間です。Blindfoldは「広告」「プライバシー」「迷惑要素」という3つの独立したルールリストを搭載しています。「広告」リストは広告サーバーと広告素材を担当します。「プライバシー」リストはトラッカー専用に作られていて、フィンガープリンティングスクリプト、アナリティクスビーコン、セッションレコーダー、既知のデータブローカーのドメインを、EasyPrivacyをはじめとする業界標準のトラッカーリストから調達しています。
これはBlindfoldが広告をブロックするのとまったく同じ方法で動きます。Appleのコンテンツブロッカーの仕組みを通じて、トラッキングスクリプトが読み込まれる前にネイティブにブロックします。ページにJavaScriptが注入されることはなく、ページごとの処理負荷もなく、Safari自身のレンダリングエンジンがルールリストを直接適用します。設定 > アプリ > Safari > 拡張機能 でオンにすれば、「プライバシー」リストは「広告」「迷惑要素」と並んで、あるいは単独でも動作します。
そのリストのすべてのルールはアプリ内で確認・編集できます。トラッカー向けのルールが必要なサイトを壊してしまった場合は、どのルールが原因かを確認してオフにできます。当てずっぽうで試したり保護をまるごと切ったりする必要はありません。これは広告ブロックよりもトラッカーブロックで重要になる点です。壊れた広告は煩わしいだけですが、ログインスクリプトをブロックしてしまうルールには、素早く目に見える形での修正が必要だからです。
Blindfoldの料金は30日間の無料トライアル後に$7.99/年、または買い切りで一度きり$19.99です(サブスクリプションなし)。どちらもファミリー共有付きでアカウント登録は不要です。コンテンツブロッカー拡張機能の仕組みをもっと詳しく知りたいなら、Safariのコンテンツブロッカーとは何かで解説しています。広告そのものが目的でここにたどり着いたなら、iPhoneで広告をブロックする方法でその側面のすべての方法を解説しています。Blindfoldを直接ダウンロードすることも、App Storeで見ることもできます。
まとめ
広告はトラッキングの中で目に見える部分なので、注目を集めがちです。あなたの閲覧習慣のプロファイルを静かに作り上げているスクリプトは目に見えない部分で、広告専用のブロッカーはそもそもそれを捕まえるようには作られていません。「サイト間トラッキングを防止」とPrivate Relayは隙間の一部を埋めてくれます。専用の「プライバシー」リストは残りの部分を埋め、しかも何を止めているのかを正確に確認させてくれます。