ブログに戻る
技術 公開:22.09.2026 1分で読めます

他に誰が読んでいるか:フォームのページにある第三者のスクリプト

お問い合わせフォームのページは、他の六社ほどのコードを読み込んでいることがよくあります。中には訪問者の入力内容が見えるものもあり、その大半をチームの誰も確認していません。

お問い合わせフォームに入力する人は、メッセージがその事業者へ届くと思っています。しかし多くのサイトでは、フォームのページで分析提供者、広告ネットワーク、チャット提供者、長年タグマネージャーに追加されたさまざまなスクリプトも動きます。どのスクリプトもサイト自身のコードと同じ権限で動き、ページを読み、入力欄を監視し、そのスクリプトの提供者のサーバーにデータを送れます。すべてがそうするという意味ではありません。しかし、訪問者が氏名、メールアドレス、時には健康、お金、法的な問題の詳細を入力するページでは、誰が一緒に読んでいるかを把握すべきです。

よくあるもの

  • セッションリプレイツールは、後で訪問を再生できるよう、クリック、スクロール、多くの場合はキー入力を記録します。欄をマスキングしなければ、フォームに入力した内容も含まれます。
  • 広告や分析のピクセルは、フォームのページ自体や、多くの場合は完了ページで、ページ閲覧やコンバージョンを第三者へ報告します。
  • チャットウィジェットは別のドメインからアプリケーション一式を読み込みます。通常はフォームのあるページを含め、すべてのページで行います。
  • タグマネージャーを使うと、マーケティング担当者はデプロイなしでスクリプトを追加できます。便利ですが、誰も確認しないままコードがフォームのページに届くことも意味します。
  • A/B テスト、ヒートマップ、ソーシャル埋め込み、フォント、地図といった小さな補助機能も、それぞれ少なくとも訪問者の IP アドレス、通常はサイトのアドレスも受け取るホストを追加します。その中のスクリプトは、ページの完全な URL も読めます。

セッションリプレイ:入力欄の隣にある記録装置

ほとんどのリプレイツールには、入力欄をマスキングしたり、領域全体を除外したりする設定があり、特定の欄を標準で隠すものもあります。弱点は例外です。標準設定が対象にしない自由記述欄、マスキング規則が認識しない部品で作ったフォーム、デバッグ中に誰かが無効にして戻さなかった設定などです。その結果、第三者に保存された記録に、訪問者がこちらへ書いた内容そのものが含まれることがあります。本人は想定しておらず、GDPR 第 13 条により個人データの受領者や受領者の種類を示すべきプライバシーポリシーにも、まったく記載がないかもしれません。

ピクセルと完了ページ

コンバージョンの追跡には、フォームが送られたという信号が必要です。完了ページは、それを発生させる自然な場所です。ほとんどのピクセルは、イベントのたびにページの完全なアドレスを送ります。フォームが GET で送信したり、送信後のリダイレクトが URL に ?name=…&email=… などの値を加えたりすると、その値は広告や分析の提供者へ直接届きます。照合精度を高めるため、フォームからメールアドレスや電話番号を自動取得する機能を持つピクセルもあります。また、訪問者が Cookie バナーに答える前や、拒否した後にピクセルが動くと、もはや技術だけの問題ではありません。

フォームのデータが気付かれずに外へ出る仕組み
1訪問者が入力
氏名、メールアドレス、メッセージをフォームの欄に入力する。
2リプレイのスクリプトが記録
マスキングされていない欄が、第三者のサーバー上の記録に入る。
3パラメーター付きでリダイレクト
送信後、サイトが /thanks?email=… へリダイレクトする
4ピクセルが動作
コンバージョンのイベントが、メールアドレスを含む完全な URL を広告ネットワークへ送る。
5データが外へ出る
訪問者が共有先として選んだことのない提供者の手元に、データが置かれます。
仮の一連の流れです。各段階自体は、珍しいものではありません。

タグマネージャー、同意、サプライチェーン

全体像を見失う場所は、タグマネージャーであることがよくあります。二年前の展示会用キャンペーンタグ、ヒートマップツールの試用、誰も使わなくなったネットワークのピクセルなどが、フォームを含む全ページでまだ読み込まれているかもしれません。トリガーは「すべてのページ」に設定されがちで、同意規則もタグごとのため、一つ条件が欠けるだけで、訪問者が同意する前にスクリプトが読み込まれます。

サプライチェーンの問題もあります。別のホストのスクリプトを埋め込むと、現在と将来にそのホストを管理する相手を信頼することになります。提供者がスクリプトの動作を変えたり、買収されたり、配信基盤を侵害されたりすることがあります。ブラウザーは正規のスクリプトと改ざんされたものを区別できません。そのため、フォームのページに注入されたコードは、すべての欄を読み、どこへでも送れます。購入手続ページのスキミングと同じ仕組みです。

できること

  1. 1棚卸しをします。ブラウザーの開発者ツールで各フォームのページと完了ページを開き、Network タブですべての外部ホストを一覧にします。同意なしと、バナーに同意した後の両方で行います。
  2. 2誰も必要としていないものを削除します。担当者や目的が明確でないタグは削除候補です。タグマネージャーのトリガーを制限し、フォームのページでは必要なタグだけを動かします。
  3. 3リプレイツールの入力をマスキングします。パスワードだけでなく、すべての入力欄を対象にし、可能ならフォームの領域全体を除外します。その後、実際に何が保存されたか、記録を見て確認します。
  4. 4個人データを含めずにコンバージョンを送ります。POST で送信し、リダイレクト URL にフォームの値を入れず、「contact_form_sent」のような中立的なイベントを発生させます。ピクセルのフォーム欄自動収集を無効にします。
  5. 5同意後にだけ読み込みます。同意が必要なスクリプトは、訪問者が同意する前に読み込んではならず、拒否した場合も停止したままにします。両方の経路をテストします。
  6. 6可能な範囲で固定と制限をします。Subresource Integrity(script タグ上のハッシュ)は、変更された静的ファイルをブラウザーに拒否させます。タグマネージャーのように、意図的に変更されるスクリプトには適しません。Content Security Policy は、スクリプトを実行できるホストを制限します。まずレポート専用モードで、何に支障が出るかを確認します。
  7. 7変化を監視します。フォームのページに新しいスクリプトのホストを追加するのは、意図的な判断であるべきです。突然現れるものにしてはいけません。出現時に通知されるようにします。

formexposed は、フォームのページでどの追跡ピクセルが動くか、セッションリプレイツールがフォーム入力を記録し得るか、Cookie バナーを拒否すると本当に追跡が止まるかを、受動的に、何も送信せず確認します。無料チェックは全体の水準を示し、これらの検出結果は完全なレポートに含まれます。確認済みドメインの監視では、フォームのページに新しいスクリプトのホストが現れた場合も通知します。

法的助言ではありません
この記事は、第三者のスクリプトの技術面とデータ保護面について、一般的な情報を提供します。法的助言ではありません。特定の構成に同意が必要か、プライバシーポリシーに記載すべきかは、個別の状況によって異なります。不明な場合はデータ保護の専門家に相談してください。