kostumブログ

勉強したことやノート代わりのアウトプットに使っています。

Third Party Cookieの廃止 〜トラッキングプロテクションとWeb開発者への影響〜

こんにちは。

今回、GoogleのChromeにおいて、Third Party Cookieをブロッキングするテストが始まるという記事を見て、どうゆうことなのか気になったので、色々と調べてみました。

※ 以下の内容については、私が独自で調べた結果を記載しています。私自身、英語が得意ではなく、解釈を間違えてしまったり意図を明確に把握できていない部分があるので、そのことに十分注意し、それを認識した上でお読みいただけると幸いです🙇‍♂️

Cookieとは?

まず、ここでお話しする「Cookie」についてお話しします。

Cookieとは、集英社が発刊している少女まんが誌...ではなく(知らなかった)、サーバーとの送受信をすることができ、ブラウザが保持することができる小さなデータ、のことです。

詳細な仕様については、以下参考をお読みいただきたいのですが、Cookieは以下の用途で使われます。

  • セッション管理(ログイン情報やショッピングカート情報など)
  • パーソナライズ(ユーザーの設定など)
  • ラッキング(ユーザーの行動記録など)

Third Party Cookieとは?

次に、「Third Party Cookie」とは何なのでしょうか。

順を追って説明するため、まずは「First Party Cookie」についてお話しします。

Cookieドメインとスキームに関連づけられています(ドメインとスキームについてはこちら)。 そのため、現在開いているWebサイトの画面と、あるCookieドメインとスキームが一致している場合、そのCookieはそのWebサイトと同じサイトからのものとみなされます。 このCookieのことを、First Party Cookieと言います。

そして、ドメインとスキームが異なる場合のCookieを、Third Party Cookieと言います。もちろん、そのCookieは同じサイトのものとはみなされません。

ちなみに、Second Party Cookieというものもあります。 Third Party Cookieは特定のWebサイトに限らず横断的にCookieを付与しているものですが、Second Party Cookieは、他社が保有するWebサイトで発行したCookieのことです。 ここでは、これ以上深堀りしない為、興味のあるかたは別サイト様をご参照ください。

Third Party Cookieの廃止

ということで、本題に戻ります。

Googleが、ChromeでのThird Party Cookieの廃止を決定しました。 では、なぜCookieを廃止することにしたのでしょうか。

なぜ廃止となったのか

プライバシーの面

Webページで収集されたあらゆるデータは、Third Party Cookieに保存することができます。そして、発信元のThird Partyのドメインは、それらThird Party Cookieにアクセスし、情報を集約することができます。

例えば、以下のような合法的な使用であれば問題ありません。

  • ある企業が、異なるドメイン上にある複数のサイト間で、同じ認証認可機構を用いている時のログイン状態やプロフィール情報を共有したい場合
  • UXを高めるために、異なる情報間で収集、分析をしたい場合
  • Web広告企業で、ユーザーの訪問記録からユーザーの興味を推測し、より関連性の高い広告を表示したい場合

一方で、世間には良い人ばかりではなく、悪い人もいます。最悪の場合、Cookieの情報はユーザーを追跡するために使用され、そのユーザーの詳細な個人情報を推測してしまいます。 その個人情報には興味関心だけではなく、性別、セクシュアリティ、宗教、政治的信条など、より深い個人情報も含まれる可能性があります。

上記でお話ししたように、一番大きな懸念事項がプライバシーに関わる問題です。 しかし、他にもセキュリティ的な面、広告詐欺(アフェリエイト詐欺)の面も問題としてあるようです。

セキュリティーの面

セキュリティーの問題では、以下の懸念が起こる可能性があります。

  • CSRF
    • Cookieに悪意のあるScriptを仕込み、リクエストを実行させる。
  • XSS
    • 悪意のあるScriptをWebサイトに仕込み、Cookieに保存されている機密情報などを盗む。
  • セッションの固定化によるログイン情報の乗っ取り
    • Cookieに含まれているセッションIDをクラッカーが用意したセッションIDに置き換え、ユーザーのログイン情報を乗っ取る → 特定のサイトのアカウントにアクセスできてしまう。

広告詐欺(アフィリエイト詐欺)

そもそもアフィリエイトとは、第三者の製品を宣伝することによって、そのアフィリエイトリンクを踏んで(アフィリエイトを通じて)商品を購入すると宣伝者に売上の一部を受け取ることができる仕組みを言います。 この売上は、アフィリエイトCookieとユーザーからの売上を関連づけることによって追跡されています。

この仕組みが悪用されてしまいます。 Cookieを詰め込み、悪意のある第三者が、侵害されたサイトに不正なCookieを忍び込ませます。ユーザーがそのサイトを訪れると、Cookieが取得されてしまい、アフィリエイトページと密かに通信して、不正な販売が行われるようです。

以上の理由から、Third Party Cookieの廃止が決まりました。

今後のスケジュール

では、今後どのようにしてThird Party Cookieが使用できなくなるのでしょうか。

Google Japan Blog によると、

サードパーティ Cookie へのアクセスをデフォルトで制限することで、ウェブサイト間トラッキングを防止するトラッキング保護機能のテストを 2024 年 1 月 4 日から、全世界の Chrome ユーザーの 1% に展開します。このテストは、2024 年後半に全てのユーザーのサードパーティ Cookie を段階的に廃止するというプライバシー サンドボックス の重要なマイルストーンです。

と記載されており、今年の秋ぐらいからThird Party Cookieが廃止されていくようです。

2024年1月4日から、Chromeユーザーの1%に当たる3000万人を対象に、ウェブサイトアクセス時にThird Party Cookieをブロックする「トラッキングプロテクション」のテストを行っているようです。

Web開発者への影響

以上、Third Party Cookieが廃止されることをお話ししてきましたが、我々Web developerにはどのような影響があり、対策が必要になるのでしょうか。

これについて調べているときに、以下のブログ記事を見つけました。

developer.mozilla.org

こちらの記事から引用させていただきました。

Third Party Cookieの使用状況を監査する

サードパーティーCookieは、SameSite=noneが設定されています。そのため、ブラウザのDevToolsでこの設定を検索することで、Third Party Cookieを特定できます。

Third Party Cookieを使う機能が壊れていないかテストする

ブラウザの設定で、Third Party Cookieをブロックするように設定できるので、フェーズアウト後の状態をエミュレートすることができます。

重要な機能が壊れた場合は、修正する

最初のうちは、その機能が壊れて使えない状態にするのではなく、パーソナライズしないように機能を劣化させることが必要になるかもしれません。もしくは、別の手段でパーソナライズするためのデータを取得したり、すでに持っているデータから傾向を推測する必要があります。

Storage Access API または Related Website Sets を使用して、特定のサイトに対してのみクロスサイトクッキーアクセスを許可することができます。 (Storage Access API、Related Website Setsについては、リンク先を参照してください。もしかしたら、別記事で書くかもです。)

Third Party Cookieが生成されたトップレベル・サイトと1:1ベースで使用されている場合、Cookies Having Independent Partitioned State (CHIPS)、すなわちパーティション化された Cookieを使用して、トップレベル・サイトごとに個別のCookieを持つパーティション化されたストレージにCookieを設定することができます。既存のクロスサイトクッキーにpartitioned属性を追加するだけです。Cookieは無制限に使用できますが、他のサイトと共有することはできません。CHIPSは現在Chromium専用であることに注意してください。

GoogleのPrivacy Sandboxプロジェクトで利用可能なさまざまな機能が、ユースケースに合うかどうか調べることができます(これらも現在はChromiumのみです)。

例えば、以下があります。 (これらのAPI、機能についても別記事で書くかもです。)

まとめ

主にプライバシーの観点から、Third Party Cookieは廃止されていく動きがあります。

そして、とうとうGoogleChromeにおいて、Third Party Cookieブロッキングするテストが2024年1月4日から始まりました(トラッキングプロテクション)。

Third Party Cookieを設定していたWeb開発者としては、最初のうちはパーソナライズという機能を劣化させる対応が必要になるかもしれません。 しかし、Googleは、Privacy Sandboxプロジェクトを進めており、これらが提供する機能を使って、プライバシーにも考慮したパーソナライズができるようになる。

余談

色々と記載しましたが、このブログを読んでいただければ良いかも。

blog.cybozu.io

SafariFireFoxでは、すでにThird Party Cookieを既定でブロックされています。 Safariは完全にブロックされているようですが、FireFoxはトラッカーを含むことが知られているThird Party Cookieはブロックされています。

gigazine.net

support.mozilla.org

参考文献

developer.mozilla.org

developer.mozilla.org

japan.googleblog.com

blog.google

gigazine.net

gigazine.net

kinsta.com

gigazine.net

digiday.jp

developers.google.com