2024 年に大規模なサプライチェーン攻撃の舞台となった polyfill.io ドメインが、いまだに当時のスクリプトタグを残したまま放置されているサイトで、Polyfill.io を放置したサイトで不審なダイアログが表示されている件(Zenn) が報告されています。かつて何気なく貼った 1 行の <script src="https://cdn.polyfill.io/..."> が、運用者の知らないところでユーザーに認証ダイアログを出す——これは「制作時には安全だったコードが、数年後に攻撃経路へ変わる」という第三者スクリプト特有のリスクの典型例です。
Web 制作・保守を受託する立場では、これは「Polyfill.io を消せば終わり」という単発対応ではなく、サイトが読み込むすべての外部スクリプト(CDN・タグマネージャ・解析・チャット・広告・フォント・SDK)を継続的に棚卸しし、改ざん・乗っ取り・廃止ドメインから守る運用を設計すべき課題だと捉えています。これまで Web セキュリティの基本(GH Media) で扱った 守りの基礎、SSL 証明書ガイド(GH Media) で扱った 通信の信頼性、WordPress プラグイン・サプライチェーン対策受託(GH Media) で扱った 依存の乗っ取りリスクと接続して、本記事では 「Web サイト第三者スクリプト・サプライチェーン監査」を 受託パッケージとして整理します。
なぜ「いま」第三者スクリプト監査なのか
| 観点 | 放置されたサイト(従来) | 監査・統制されたサイト(2026) |
|---|---|---|
| 外部スクリプト | 制作時のまま貼りっぱなし | 棚卸し台帳で全件管理 |
| 読み込み元 | 任意ドメイン直リンク | 許可リスト + SRI 検証 |
| 廃止ドメイン | 気づかず放置 | 定期スキャンで検知 |
| 改ざん検知 | なし | CSP + SRI + 監視 |
| 責任の所在 | 曖昧 | 契約で明文化 |
| 対応速度 | 事故後に発覚 | 異常時に即遮断 |
つまり今回の事例は、「外部スクリプトは貼った瞬間に他人の管理下のコードを自社サイトで実行している」という事実を改めて突きつけました。受託では 棚卸し → 統制 → 監視 → 契約の一連を整えることで、数年後の事故を未然に防ぐことができます。
受託案件で活きる 3 つの構造変化
構造 1: 「貼りっぱなし」から「台帳管理」へ
タグマネージャや解析タグは、追加した人も理由も分からなくなりがちです。受託では 全外部スクリプトの台帳(用途・読み込み元・追加日・責任者)を整備し、不要タグの削除と棚卸しの定例化を提供します。
構造 2: 「無検証読み込み」から「CSP + SRI」へ
外部スクリプトを無防備に読み込むと、配信元の乗っ取りがそのまま自社サイトの被害になります。受託では Content-Security-Policy(CSP)による読み込み元の制限と Subresource Integrity(SRI)によるハッシュ検証を導入し、改ざんされたコードの実行を防ぎます。
構造 3: 「事故後対応」から「定期スキャン」へ
廃止・売却されたドメインは、ある日突然悪性化します。受託では 定期的な外部スクリプト・ドメインのスキャンと 異常時の遮断手順(Runbook)を整え、発覚を「事故後」から「予兆段階」へ前倒しします。
受託で提供する「第三者スクリプト監査」5 フェーズ
フェーズ 1: 棚卸し(1 週間)
- 全ページの外部スクリプト・タグ・iframe を機械抽出
- 読み込み元ドメインと用途の特定
- 廃止・売却・期限切れドメインの判定(polyfill.io 等)
- 不要タグ・重複タグの洗い出し
フェーズ 2: リスク評価(1 週間)
- 各スクリプトの権限・取得データの評価
- 個人情報・Cookie 取得の有無
- 改ざん・乗っ取り時の影響範囲
- 優先度付け(即時削除 / 統制 / 容認)
フェーズ 3: 統制実装(1〜2 週間)
- 不要スクリプトの削除・自己ホスティング化
- CSP ヘッダ設計・導入
- SRI ハッシュ付与(固定バージョン配信)
- タグマネージャの権限・承認フロー整備
フェーズ 4: 監視構築(1 週間)
- 外部スクリプト・ドメインの定期スキャン
- CSP 違反レポートの収集・通知
- 異常検知時のアラートと遮断 Runbook
フェーズ 5: 保守運用(継続)
- 月次の棚卸し更新・差分レビュー
- 新規タグ追加時の事前審査
- インシデント対応・報告
受託向け技術・チェック標準セット
| レイヤ | 推奨対策 | 代替・補足 |
|---|---|---|
| 読み込み元制限 | Content-Security-Policy | Report-Only から段階導入 |
| 改ざん検知 | Subresource Integrity(SRI) | 固定バージョン配信が前提 |
| 配信安定化 | 重要 JS の自己ホスティング | npm 取り込み + バンドル |
| タグ統制 | GTM 権限 + 承認フロー | 直書きタグの撤廃 |
| 監視 | CSP 違反レポート収集 | 外形監視 + ドメイン WHOIS 監視 |
| 棚卸し | スクリプト台帳(用途・責任者) | 月次差分レビュー |
どの案件に必要か / 不要か
| 必要な案件 | 優先度が低い案件 |
|---|---|
| 数年運用している企業サイト | 公開直後で外部タグが最小 |
| EC・会員・フォームで個人情報を扱う | 静的な情報サイトのみ |
| 広告・解析タグを多数導入 | タグ管理が一元化済み |
| 制作会社が代替わりしている | 社内で全タグを把握済み |
| ブランド・信頼が事業の核 | 検証用の使い捨てサイト |
受託契約に書く 6 つの条項
| 条項 | 内容 | 顧客が確認すべきこと |
|---|---|---|
| 監査範囲 | 対象ドメイン / ページ数 | サブドメインの扱い |
| タグ追加方針 | 新規タグの承認フロー | 営業部門の自由追加可否 |
| CSP 影響 | 既存機能への副作用検証 | 広告・解析の継続可否 |
| 検知時対応 | 遮断・通知の SLA | 夜間・休日の対応範囲 |
| 報告 | 月次棚卸しレポート | 経営報告への利用 |
| 引き渡し | 台帳 / CSP 設定 / Runbook | 自社運用継続性 |
価格モデル — 第三者スクリプト監査パッケージ
| プラン | 金額 | 対象 | 内容 |
|---|---|---|---|
| スポット監査 | 30 万円〜 | 1 サイト棚卸し + 評価 | レポート + 改善提案 |
| 統制実装 | 60 万円〜 | CSP + SRI + 台帳整備 | 一括導入 |
| Lite 保守 | 5 万円〜 / 月 | 小規模サイト | 月次棚卸し + 監視 |
| Standard 保守 | 15 万円〜 / 月 | 中規模 + EC | + CSP 運用 + 即時遮断 |
| Enterprise | 40 万円〜 / 月 | 複数サイト統括 | + 横断統制 + SLA |
顧客側 ROI 試算(中規模企業サイト / 外部タグ約 30 本想定)
| 項目 | 既存(放置運用) | 監査・統制後 | 差分 |
|---|---|---|---|
| 外部スクリプト把握率 | 約 40% | 100% | +60pt |
| 改ざん検知までの時間 | 事故後(数日〜) | 即時 | 大幅短縮 |
| 不要タグ削減 | 0 本 | 約 8 本削除 | 表示速度改善 |
| 想定インシデント損失 | 数百万円規模 | 予防により回避 | リスク低減 |
| 年間効果 | — | — | 重大インシデント 1 件回避 + 信頼維持 |
統制実装 + Standard 保守(年額 約 240 万円)でも、重大インシデント 1 件の回避と表示速度・信頼の維持で十分に正当化できます。
ハマりやすい 5 つの落とし穴
落とし穴 1: CSP をいきなり強制適用する
既存の広告・解析が止まります。Report-Only モードで違反を収集してから段階導入します。
落とし穴 2: SRI を付けてバージョンが流動する
@latest 配信に SRI を付けると更新で壊れます。バージョン固定が前提です。
落とし穴 3: タグマネージャを「誰でも追加可」にする
統制の抜け穴になります。権限と承認フローを設計します。
落とし穴 4: 棚卸しを一度きりにする
タグは増え続けます。月次の差分レビューを定例化します。
落とし穴 5: 廃止ドメインを監視しない
polyfill.io の二の舞になります。読み込み元ドメインの状態監視を組み込みます。
90 日アクションプラン
| 週 | アクション |
|---|---|
| Week 1 | 全外部スクリプトの棚卸し + 台帳化 |
| Week 2〜3 | リスク評価 + 不要タグ削除 + 自己ホスティング化 |
| Week 4〜6 | CSP(Report-Only)+ SRI 段階導入 |
| Week 7〜9 | 違反レポート分析 + CSP 本適用 |
| Week 10〜13 | 定期スキャン + 遮断 Runbook + 月次保守開始 |
まとめ — 「貼りっぱなし」から「統制された外部依存」へ
polyfill.io の再燃は、Web サイトが読み込む第三者スクリプトは「他人の管理下のコードを自社で実行している」という当たり前の事実を思い出させます。受託で Web 制作・保守を支える立場では、棚卸しで全件を把握し、CSP と SRI で実行を統制し、定期スキャンで予兆を捉える 「第三者スクリプト・サプライチェーン監査」が、サイトリニューアルや保守契約に欠かせない要素になりました。
弊社ではスポット監査 / 統制実装 / Lite / Standard / Enterprise の各段階で本パッケージを提供しています。「昔貼ったタグが不安」「サイトリニューアルに合わせて外部依存を整理したい」「EC・会員サイトの信頼を守りたい」というご相談は お問い合わせフォーム からお気軽にどうぞ。