ブログに戻る
ガイド·15 分で読める

iPhone・Mac・Androidでウェブサイトトラッカーをブロックする方法 — 完全ガイド

ウェブサイトトラッカーとは、ウェブページに埋め込まれたスクリプト・ピクセル・ネットワークリクエストであり、あなたに関するデータ――あなたが誰か、何を閲覧しているか、どこから来たか、次にどこへ行くか――を収集します。すべてのプラットフォームでブロックすることは可能ですが、どれか一つの方法ですべてに対応できるわけではありません。トラッカーの技術的な実体、各ブロック方法がどのプラットフォームで機能するか、そして各方法でブロックできるもの・できないものを解説します。

執筆: Casper's Cloak Security Team

要点:ウェブサイトトラッカーは4つのカテゴリに分類されます――アナリティクススクリプト、広告・リターゲティングピクセル、フィンガープリンティング、CNAMEクローキングです。ブラウザ拡張機能(uBlock Origin)はデスクトップで最も多くのトラッカー種別をブロックできますが、iPhoneでは使用できません。SafariコンテンツブロッカーはiPhoneで機能しますが、Safari内のみに限定されます。DNSレベルのブロックはすべてのアプリとプラットフォームで機能しますが、ファーストパーティおよびCNAMEクローキングされたトラッカーは見逃します。VPNベースのフィルタリングは最も広範なクロスプラットフォームカバレッジを提供します。最適な方法はプラットフォームと保護したいデバイスの数によって異なります。以下に完全な内訳を示します。

ブロック方法の比較:プラットフォームサポートと対応トラッカー種別

ブロック方法iPhoneMacAndroidアナリティクス広告ピクセルフィンガープリンティングCNAMEクローキング
ブラウザ拡張機能(uBlock Origin)不可(iOS Safariでは使用不可)可(Firefox、Chrome)可(Firefox)可(ほぼすべて)可(uBO + Firefox使用時)
Safariコンテンツブロッカー可(Safariのみ)可(Safariのみ)不可部分的不可
DNSレベルのブロック可(すべてのアプリ)可(すべてのアプリ)可(すべてのアプリ)可(専用ホスト名)可(専用ホスト名)不可不可
VPNベースのフィルタリング可(すべてのアプリ)可(すべてのアプリ)可(すべてのアプリ)可(専用ホスト名)可(専用ホスト名)不可(ただしフィンガープリンティングスクリプトのホスト名はブロック)部分的(脅威インテリジェンスによる一部対応)

これらのトラッカー種別とは何か、なぜ各ブロック方法によってブロックできるものが異なるのか、そして各プラットフォームでの実際のセットアップ方法を詳しく説明します。

ウェブサイトトラッカーの実体

「ウェブサイトトラッカー」という用語は曖昧です。だからこそ、多くのブロックに関するアドバイスも曖昧になりがちです。具体的に見ていきましょう。ウェブ上には4つの異なる種類のトラッキング技術があり、それぞれ異なる方法で機能します。そのため、異なるブロック方法がそれぞれ異なる種類をブロックします。

1. アナリティクススクリプト

Google Analytics、Plausible、Matomo、Mixpanel、Amplitude、Heap――これらは、ウェブサイトオーナーがページに埋め込むJavaScriptライブラリで、訪問者の行動(どのページが閲覧されたか、滞在時間、クリック箇所、離脱ポイントなど)を把握するために使用されます。Google Analyticsは全ウェブサイトの55%以上に存在し、圧倒的に最も普及しています。トラッキングは、外部ドメイン(例:google-analytics.com)からJavaScriptファイルを読み込み、ブラウザ内で実行してアナリティクスサービスに訪問データを送信することで機能します。通常収集されるデータには、ページURL、リファラー、画面サイズ、ブラウザ、OS、滞在時間、スクロール深度、クリック情報が含まれます。Google Analyticsは訪問をまたいで持続するCookieも設定し、再訪問者を識別できるようにしています。

2. 広告・リターゲティングピクセル

Metaピクセル(旧Facebookピクセル)、Google広告コンバージョントラッキング、TikTokピクセル、Twitter/Xピクセル、LinkedIn Insightタグ、Pinterestタグ――これらは、ウェブサイトオーナーが広告プラットフォームに訪問者の行動を報告するためにインストールするスクリプトです。Metaピクセルが設置されたECサイトの商品ページにアクセスすると、Facebookはその商品を閲覧したことを把握します。その後、Instagramを開くと、Facebookはその商品の広告を表示します。これが「リターゲティング」であり、「靴を見たら靴の広告ばかり表示される」という現象の仕組みです。トラッキングはアナリティクスと同様に機能します。広告プラットフォームのドメインからJavaScriptファイルが読み込まれ、ブラウザで実行されてデータを送信します。違いは、広告ピクセルが広告目的のクロスサイト行動プロファイルを構築するために明示的に設計されているという点です。

3. ブラウザフィンガープリンティング

フィンガープリンティングはCookieやデバイスに保存された識別子に依存しません。代わりに、ブラウザとデバイスの特性を使用して、確率的に一意な識別子を構築します。収集されるデータポイントには、画面解像度、インストール済みフォント、WebGLレンダラー文字列(GPU)、オーディオコンテキストフィンガープリント、キャンバスレンダリング出力、タイムゾーン、言語、プラットフォーム、ブラウザプラグイン、CPUコア数、利用可能メモリなど、数十項目が含まれます。これらのデータポイントを組み合わせると、90%以上のブラウザを一意に識別するフィンガープリントが作成されます。フィンガープリンティングの重要な特性は、ステートレスであることです――データはローカルに保存されたものではなく、ハードウェアとソフトウェアの構成から取得されるため、Cookieを削除してもフィンガープリントは変わりません。

フィンガープリンティングをブロックすることは難しいです。なぜなら、フィンガープリンティングは通常のウェブサイトが正常な機能のために使用する標準的なブラウザAPI(Canvas、WebGL、AudioContext)を利用するからです。これらのAPIをブロックするとウェブサイトが壊れます。最も効果的な防御方法は、APIの出力をランダム化すること(FirefoxのEnhanced Tracking ProtectionとBraveが一部のAPIで実施)か、フィンガープリンティングスクリプトの読み込み自体をブロックすること(どのスクリプトがフィンガープリンティングを行っているかを知る必要があり、uBlock Originなどのブラウザ拡張機能がコミュニティが管理するフィルターリストによって実施)です。

4. CNAMEクローキング

CNAMEクローキングは、DNSレベルのブロックに対するトラッキング業界の対策です。仕組みはこうです。トラッキングスクリプトをanalytics.tracker.com(DNSフィルターがブロックする)から読み込む代わりに、ウェブサイトはdata.example.comのようなサブドメインをトラッカーのインフラストラクチャにマップするCNAME DNSレコードを作成します。ブラウザはリクエストがdata.example.com宛であることを確認します――これは訪問中のサイトへのファーストパーティリクエストのように見えます――DNSレベルのブロッカーはホスト名がウェブサイト自体のものなのでブロックしません。実際のデータはCNAMEリダイレクト経由でトラッキング企業のサーバーに流れますが、リダイレクトはブラウザレベルではなくDNSインフラストラクチャレベルで発生するため、ブロックレイヤーにはリダイレクトが見えません。

CNAMEクローキングは現在、比較的少数のウェブサイト(大手パブリッシャーの10〜15%と推定)で使用されていますが、DNSレベルのブロックを効果的に回避できるため増加しています。CNAMEクローキングを確実に検出できるツールは、Firefox上のuBlock Origin(フィルタールールを適用する前にCNAMEチェーンを解決する)と、既知のCNAMEクローキング設定を追跡する一部の特化型ブロックリスト(NextDNSが最良の一つを管理)のみです。Safariコンテンツブロッカーと標準的なDNSフィルターはこれを検出できません。

iPhoneでトラッカーをブロックする

iPhoneは3つのプラットフォームの中で最も制約の多いブロックオプションを持っています。iOSはSafariでのブラウザ拡張機能(AppleのContent Blocker APIを除く)を許可せず、アプリが他のアプリの動作を変更することも許可していないためです。選択肢は以下の通りです。

Safariコンテンツブロッカー(1Blocker、AdGuard for Safari、Wipr):AppleのContent Blocker APIを使用して、既知のトラッカードメインへのネットワークリクエストをブロックし、ページ上のトラッキング要素を非表示にする宣言型ルールをSafariに提供します。既知のサードパーティドメインから読み込まれるアナリティクススクリプトや広告ピクセルに対して有効です。フィンガープリンティング(多くの実装では外部スクリプトではなく標準APIを使用するため)やCNAMEクローキングされたトラッカー(コンテンツブロッカーはCNAMEターゲットではなくファーストパーティドメインを参照するため)は検出できません。Safari内でのみ機能します――Chrome、Firefox、アプリ内ブラウザには影響しません。設定方法:App Store > コンテンツブロッカーをインストール > 設定 > Safari > 機能拡張 > 有効化。

DNSレベルのブロック(Casper's Cloak、NextDNS、AdGuard DNS):トラッカーのホスト名をDNSレイヤーでブロックし、Safariだけでなく、スマートフォン上のすべてのアプリで機能します。InstagramアプリがトラッキングのためにDNSでgraph.facebook.comを解決しようとすると、DNSフィルターがブロックします。専用のサードパーティホスト名を使用するアナリティクススクリプトや広告ピクセルをブロックできます。CNAMEクローキングされたトラッカー(DNSクエリはファーストパーティサブドメイン宛で、フィルターにはCNAMEチェーンが見えない)やフィンガープリンティング(外部ホスト名を必要としない)はブロックできません。Casper'sトラッカーブロックは数万件の既知のトラッカーエンドポイントをカバーするブロックリストを管理しています。NextDNSは同等のカバレッジと、より細かなリスト別設定を提供します。

iPhoneの推奨セットアップ:両方を使用してください――ブラウザ内トラッカーブロック(トラッキング要素のコスメティック非表示を含む)のためのSafariコンテンツブロッカーと、すべてのアプリにわたるシステム全体のカバレッジのためのDNSレベルのブロックを組み合わせます。2つのレイヤーは競合しません。コンテンツブロッカーはDNSでは正当なコンテンツと区別できない残存トラッカーを処理し、DNSフィルターはコンテンツブロッカーが見えないアプリレベルのトラッキングを処理します。

iOS組み込みの保護機能:SafariのIntelligent Tracking Prevention(ITP)は、既知のトラッカーのクロスサイトCookieとストレージアクセスを自動的に制限します。App Tracking TransparencyはトラッカーネットワークリクエストからIDFAを削除します。これらはIDトラッキングには役立ちますが、ネットワークリクエスト自体はブロックしません――トラッカースクリプトは引き続き読み込まれ、実行され、データを送信しますが、あなたが誰であるかについての情報が不完全になるだけです。この問題については、App Tracking Transparencyが阻止できないことに関する記事で詳しく解説しています。

Macでトラッカーをブロックする

MacはmacOSが完全なブラウザ拡張機能、システムレベルのDNS設定、iOSと同等の機能を持つVPNクライアントをサポートしているため、3つのプラットフォームの中で最も幅広いブロックオプションを持っています。

ブラウザ拡張機能(ブラウザ内トラッキングに対する最善の選択肢):Firefox上のuBlock Originはゴールドスタンダードです。コミュニティが管理するフィルターリスト(EasyList、EasyPrivacy、Peter Lowe's、その他多数)を使用して、アナリティクススクリプト、広告ピクセル、フィンガープリンティングスクリプトをブロックします。特にFirefoxでは、uBlock OriginはフィルタールールVを適用する前にCNAMEチェーンを解決でき、CNAMEクローキングを確実に検出できる唯一のコンシューマーツールとなっています。uBlock OriginはChrome(およびChromiumベースのブラウザ)でも利用できますが、GoogleのManifest V3拡張機能フレームワークにより一部の機能が制限されています。MacでSafariを使用する場合、SafariコンテンツブロッカーSafari(1Blocker、AdGuard for Safari)はAppleのContent Blocker APIを通じて同様のトラッカーブロックを提供しますが、CNAMEアンクローキングはありません。

DNSレベルのブロック:iPhoneで機能するDNSベースのフィルターと同じものがMacでも機能します――NextDNS、Casper's Cloak、AdGuard DNSです。Macでは、これらはElectronアプリ、メールクライアント、ネットワーク呼び出しを行うバックグラウンドプロセスを含む、すべてのアプリケーション(ブラウザだけでなく)からのトラッカー接続をブロックします。同じ制限が適用されます:DNSブロックは専用ホスト名のトラッカーをブロックしますが、CNAMEクローキングされたトラッカーとファーストパーティトラッカーは見逃します。

Macの推奨セットアップ:メインブラウザにuBlock Origin(CNAMEアンクローキングを含む最大カバレッジのためのFirefox)と、ブラウザ以外のアプリケーション用のシステムレベルDNSフィルタリングを組み合わせてください。Safariをメインブラウザとして使用する場合は、SafariコンテンツブロッカーとフィルタリングDNSを組み合わせてください。この組み合わせにより、ブラウザとブラウザ以外の両方のコンテキストで最も幅広いトラッカー種別をブロックできます。

Androidでトラッカーをブロックする

Androidは、iPhoneの制約とMacのオープン性の中間に位置します。完全なuBlock Originサポートを持つFirefoxをインストールでき(モバイルプラットフォームで利用可能な最高のブラウザ内トラッカーブロックが得られます)、さらにシステムレベルのDNSフィルタリングも組み合わせられます。

Firefox + uBlock Origin(最良のブラウザ内オプション):iOSとは異なり、AndroidではFirefoxで完全なブラウザ拡張機能が使用できます。Play StoreからFirefoxをインストールし、FirefoxのアドオンメニューからuBlock Originを追加してください。デスクトップ版と同じフィルターリストとCNAMEアンクローキング機能が利用できます。これはあらゆるモバイルプラットフォームで利用可能な最高のブラウザ内トラッカーブロッカーです――アナリティクス、広告ピクセル、フィンガープリンティングスクリプト、CNAMEクローキングされたトラッカーをブロックします。

プライベートDNS(Android 9以降):AndroidにはDNS-over-TLSの組み込みサポートが「プライベートDNS」設定(設定 > ネットワークとインターネット > プライベートDNS)から利用できます。VPNアプリをインストールせずに、NextDNSやAdGuard DNSなどのフィルタリングDNSリゾルバーに向けてシステム全体のトラッカーブロックを実現できます。VPNよりも軽量で、VPNスロットも使用しません。トレードオフ:DNS以外のネットワーク暗号化はなく(公共WiFiでは他のトラフィックが暗号化されない)、同じDNSレベルの制限が適用されます(CNAMEアンクローキングなし、ファーストパーティトラッキング検出なし)。

VPNベースのフィルタリング:Casper's Cloak、AdGuard for Androidおよび類似アプリは、iOSと同様のVPNベースのDNSフィルタリングをAndroidでも提供します。AndroidではFirefox + uBlock Originを同時に実行できるという追加メリットがあります――VPNがシステム全体のDNSフィルタリングを処理し、uBlock OriginがDNSでは対応できない深いブラウザ内フィルタリング(フィンガープリンティング、CNAMEクローキング、コスメティック要素非表示)を処理します。

Androidの推奨セットアップ:デフォルトブラウザとしてuBlock Origin付きのFirefoxと、フィルタリングリゾルバーを指定したプライベートDNS(DNSのみのブロック)またはVPNベースのフィルター(DNSブロックとネットワーク暗号化の組み合わせ)を組み合わせてください。この組み合わせにより、あらゆるモバイルプラットフォームで最も幅広いトラッカーブロックが実現します。

ブロックできないトラッカーと対処法

すべてのブロック方法には同じ構造的な上限があります:サーバーサイドトラッキングです。ウェブサイトがサーバーから(Metaのコンバージョンズ APIを通じて)購入データをFacebookに送信したり、サーバーサイドで(GoogleのMeasurement Protocolを通じて)アナリティクスを処理したりする場合、クライアントサイドのツールはそのトラフィックを見ることも、ブロックすることもできません。データはあなたが管理しない2つのサーバー間を流れます。リクエストはあなたのデバイスから発生しないため、ブラウザやDNSフィルターには見えません。

サーバーサイドトラッキングは、クライアントサイドのブロックが効果的になったまさにその理由から拡大しています。広告主とアナリティクスプロバイダーは、ユーザーが採用したブロックツールを回避するためにデータ収集をサーバーサイドに移行しています。MetaのコンバージョンズAPIは現在、大多数の大手ECサイトで使用されています。Googleのサーバーサイドタギングはエンタープライズアナリティクスの実装で標準になりつつあります。

対処法:デバイスレベルのツールではサーバーサイドトラッキングをブロックできません。できることは:(1)提供するデータを最小化する(すべてのサイトでアカウントを作成しない、可能な場合はゲストチェックアウトを使用する、ソーシャルアカウントをリンクしない)、(2)追跡の少ないサービスを使用する(Googleの代わりにDuckDuckGo、Gmailの代わりにProton Mail、WhatsAppの代わりにSignal)、(3)サーバーサイドシステムにデータを供給するクライアントサイドトラッカーをブロックする――Metaピクセルがデバイス上で発火できない場合、クライアントサイドの行動データが利用できなくなるため、コンバージョンズAPIが利用できるデータも少なくなります。クライアントサイドのブロックはサーバーサイドトラッキングを直接止めることはできませんが、それが依存するクライアントサイドのシグナルを除去することでサーバーサイドシステムの有効性を低下させます。

クロスプラットフォームのセットアップまとめ

複数のデバイスを持ち、すべてのデバイスで一貫したトラッカーブロックを実現したい場合、最もシンプルなアプローチは、アカウント上のすべてのデバイスをカバーする単一のDNSレベルのフィルターです。Casper's CloakとNextDNSはどちらもマルチデバイス設定をサポートしています――1つのアカウント、1セットのブロックリスト、iPhone・Mac・Androidデバイスに適用されます。これにより、すべてのプラットフォームで一貫したトラッカーブロックのベースラインが得られます。より深いカバレッジのために、上にブラウザ固有のツールを重ねてください:iPhoneはSafariコンテンツブロッカー、Mac(FirefoxまたはChrome)とAndroid(Firefox)はuBlock Origin。

  1. iPhone:Safariコンテンツブロッカー(1BlockerまたはAdGuard)+システム全体のDNSフィルタリングのためにCasper's CloakまたはNextDNS。
  2. Mac:Firefox上のuBlock Origin(Safariを使用する場合はSafariコンテンツブロッカー)+システム全体のDNSフィルタリングのためにCasper's CloakまたはNextDNS。
  3. Android:uBlock Origin付きのFirefox+システム全体のDNSフィルタリングのためにCasper's Cloak、プライベートDNS経由のNextDNS、またはAdGuard。

3つのプラットフォームすべての合計セットアップ時間:約30分。結果:所有するすべてのデバイスのすべてのアプリで、アナリティクススクリプト、広告ピクセル、ほとんどのサードパーティトラッカーネットワークリクエストがブロックされ、適切な拡張機能をサポートするブラウザでは追加のフィンガープリンティングとCNAME保護が得られます。

まとめ

ウェブサイトトラッカーは単一の技術ではありません――アナリティクス、広告ピクセル、フィンガープリンティング、CNAMEクローキングの4つの異なるメカニズムがあり、それぞれ異なるツールによって異なる方法でブロックされます。すべてのプラットフォームで4つすべてをブロックできる単一のツールはありません。ブラウザ拡張機能(Firefox上のuBlock Origin)はブラウザ内で最も近い存在ですが、iPhone SafariやブラウザでないアプリでDescriptionは機能しません。DNSレベルのブロックはすべてのアプリとプラットフォームで機能しますが、フィンガープリンティングとCNAMEクローキングは見逃します。実践的なアプローチは重ね合わせることです:最も深いブラウザ内ブロックのためのブラウザレベルのツールと、システム全体のカバレッジのためのDNSまたはVPNレベルのツール。この組み合わせは、すべてのデバイスにわたるトラッカー種別の大部分に対応します。残りのギャップ――サーバーサイドトラッキング――は、あらゆるクライアントサイドツールの構造的な制限であり、最善の対応はそれを使用するサービスに提供するデータを最小化することです。

監修: Casper's Cloak Security Team · 最終更新

すべてのデバイス・すべてのアプリでトラッカーをブロック

Casper's CloakはDNSレベルで数万件の既知のトラッカーエンドポイントをブロックします――iPhone・Mac・Androidのすべてのアプリで機能します。1つのアカウントで、すべてのデバイスに一貫した保護を。