Cloudflare、ネームサーバー切り替え時に無断でアナリティクスを注入
Tell HN: Cloudflare silently injects its analytics when you switch nameservers

Cloudflareにネームサーバーを切り替えたユーザーが、自身のサイトにJavaScriptアナリティクススニペットが自動的に挿入されたと報告。HTMLのみのサイトで、ユーザーは明示的に無効化するまで計測が続いた。Cloudflareはこの機能をオプトインにすべきだと批判している。
このアプローチは完全に侵襲的だ。このような機能はオプトインであるべきで、オプトアウトを強いるべきではない。
HNでの議論
193- leinwand
おっしゃる通り、Cloudflareは昨年9月に無料プランでこれらのアナリティクスをデフォルトで有効にしました。
私たちは、サイトオーナーが他の方法では得られない実用的なパフォーマンスデータを提供するため、無料プランにReal User Measurement(RUM)を組み込みました。無料サイトでは、以下のブログ記事で説明した理由によりデフォルトでオンになっています。不要であれば簡単に無効化できます。有料プランはすべてオプトインのみです。
これにより、無料プランでもCloudflareダッシュボード内のパフォーマンス監視ツールであるObservatoryに無料でアクセスできるようになります。Observatoryは、実際のユーザーデータとシミュレーションによるラボテストを組み合わせて、ウェブサイトの速度を測定・改善するのに役立ちます。
ブログ記事: https://blog.cloudflare.com/the-rum-diaries-enabling-web-ana...
- okzgn
代替案: <meta http-equiv="Content-Security-Policy" content="script-src 'self' https://only-scripts-allowed-from-here.com">
これにより、クライアントは自己ホストのスクリプト、または指定されたオリジンからのスクリプトのみを読み込むようになります。CSPが許可する他のディレクティブ(スタイル、画像、フレームの制限など)も同様です: https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CSP
- traceroute66
Firefoxで「拡張トラッキング防止」の厳格モードを有効にしていますが、なんと`static.cloudflareinsights.com`を許可しており、ブロックしていません。
「Firefoxはブラウジング中にあなたを保護し、トラッカーを自動的にブロックしてデジタルトレイルをコントロールできるようにします」というMozillaの宣伝は何だったのか……。
追記:
少し実験してみたところ、Firefoxのどこかにハードコードされたホワイトリストがあるようです。
最初に確認したとき、`static.cloudflareinsights.com`を見つけるのに当然の場所として`cloudflare.com`にアクセスしましたが、Firefoxのシールドはそこでは何もブロックしませんでした(だからこの投稿をしました)。
しかし、その後別のサイトを探してみて、適当に検索・クリックしているうちに`www.tenforums.com`を見つけ、そこでは`static.cloudflareinsights.com`がブロックされていました。
これはファーストパーティドメインの問題ではありません。cloudflare.comとcloudflareinsights.comは別物ですから。
厳格モードでは`static.cloudflareinsights.com`は例外なくどこでもブロックされるべきではないでしょうか?
興味深いことに、他のサイトをテストしていると、Firefoxのシールドがブロックに失敗している他のものも見つかりました。例えば`browser.events.data.microsoft.com`(microsoft.com以外のサイトでテスト)などです。
- dchest
確かに、https://blog.cloudflare.com/the-rum-diaries-enabling-web-ana...
- kazinator
もしCloudflareをDNSのみに使用していて、HTTPS接続が直接サーバーに行く場合、どうやってHTMLを注入するのでしょうか?
おそらくCloudflareにHTTPS接続を終端させている、つまり実際のプロキシとして使用しているのでしょう。
- userbinator
これは、昔の無料ホストが自社のスクリプトや広告をページに注入していたのを思い出させます。ただし、彼らの実装は、終了HTMLタグ(</body>か</html>、どちらだったかは覚えていません)を検出した後にのみ注入し、それを回避するためのさまざまなトリックがありました。タグを省略する(ブラウザは気にしない)、タグの大文字小文字をランダムにする(一部は小文字または大文字をハードコードし、大文字小文字を区別して比較していた)、コンテンツタイプを変更してブラウザの自動検出に頼る(他のタイプには注入しなかったため、現在のブラウザがどう処理するかは不明)などです。
- ChoGGi
Hacker Newsはすでに知っています。最初に発表されたとき、誰も気にしませんでした。タイトルにAIがなかったからだと思います。
- outlines
CFをプロキシとして使用していますか、それともDNSのみですか? ダッシュボードでドメインを確認したところ(数年前に購入したものも、つい先日購入したものもあります)、どれもWeb Analyticsが有効になっていませんでした。
すべてのドメインをDNSのみに設定しているので、CFプロキシは使用していません。それが理由でしょうか?