---
title: "iframe埋め込みを含むHTMLを共有するときのリスクと対策"
description: "iframe埋め込みを含むHTMLを安全に共有したい担当者向け。外部送信リスク・クリックジャッキング・サードパーティクッキーの問題と、それぞれの対処法を説明します。"
image: "https://giga-site.com/og-image.png"
canonical: "https://giga-site.com/articles/iframe-embed-risk-countermeasure"
markdown: "https://giga-site.com/articles/iframe-embed-risk-countermeasure/index.md"
category: "セキュリティ"
publishedAt: "2026-06-25"
updatedAt: "2026-06-25"
readingMinutes: 5
---
# iframe埋め込みを含むHTMLを共有するときのリスクと対策

外部URLを参照するiframeが含まれたHTMLを社外と共有するとき、外部サーバーへの情報漏えいやクリックジャッキングのリスクが生じます。リスクの種類と深刻度を整理し、共有前に取れる具体的な対策を解説します。

> Source HTML: https://giga-site.com/articles/iframe-embed-risk-countermeasure
> Article index: https://giga-site.com/articles/index.md

## なぜ危ないのか

外部iframeは読み込み先のサーバーが制御するコンテンツを表示します。悪意のある第三者がiframe srcのドメインを乗っ取るか、AIが古いドメインを参照するコードを生成した場合、フィッシングページや悪意のあるスクリプトが表示されるリスクがあります。共有URLを受け取った社外のレビュアーが被害を受ける可能性があります。

クリックジャッキングは、透明なiframeを重ねて見えないボタンをクリックさせる攻撃手法です。HTMLのレビュアーが意図せず別サービスへの操作を行わされることがあります。自社が生成したHTMLで起こる問題ではありませんが、iframeを含むHTMLを受け取った側が埋め込み元として悪用される場合もあります。

- 相手がログインなしで開ける状態か確認する
- PCとスマホで最低1回ずつ表示を確認する
- 内部情報・個人情報・不要な外部送信が残っていないか見る
- レビュー期限と修正時の差し替え方を決めておく

## ソースで見る場所

DevToolsのNetworkタブでFilter欄に`document`と入力し、iframeとして読み込まれているドキュメントを確認します。それぞれのドメインが信頼できる公式なものか、URLに個人情報が含まれていないかを確認してください。

ソースコード内で`sandbox`属性が設定されているiframeを探します。`sandbox`なしのiframeは読み込み先のスクリプトが広い権限を持つため、より危険です。`allow-scripts`や`allow-same-origin`が両方付いている場合はsandboxの効果が半減しています。

- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する

## 安全に共有する設定

共有版HTMLではiframeを除去し、その旨を共有メモに記載します。「本番版には地図が表示されますが、プレビュー版では省略しています」と補足するだけでレビュアーは文脈を理解できます。ギガサイト便の説明文フィールドを使って注記するのも有効です。

iframeを残す場合は`sandbox='allow-scripts'`のみを設定し、必要最小限の権限に絞ります。`allow-same-origin`は省いてください。さらにHTTPレスポンスヘッダーに`X-Frame-Options: SAMEORIGIN`を設定することで、自社ページが他者のiframeに埋め込まれることも防げます。

- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する

## 再発防止ルール

プロンプトテンプレートに「外部サービスをiframeで埋め込む場合は必ずsandbox属性を付け、src URLを変数として外出しし、ファイル冒頭のconfigオブジェクトで管理すること」と追記します。URLを一か所で管理することで、公開前の差し替えが容易になります。

セキュリティレビューのチェックリストに「iframeのsandbox属性あり」「srcが信頼できるドメインか」「外部iframeの数が必要最小限か」の3項目を追加します。プロジェクトの規模に関わらず、3項目なら確認の負荷が低く継続しやすいです。

- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する

## よくある質問

### iframeにsandbox属性を付けると動作しなくなる場合はどうすればよいですか？

必要な機能に応じてsandboxの値を追加します。フォームが必要なら`allow-forms`、ポップアップが必要なら`allow-popups`を追加してください。ただし`allow-same-origin`と`allow-scripts`を同時に使うとsandboxの効果が著しく低下するため避けてください。

### 自社のHTMLが他者のサイトにiframeで埋め込まれるのを防ぐにはどうすればよいですか？

サーバーが返すHTTPヘッダーに`X-Frame-Options: DENY`または`Content-Security-Policy: frame-ancestors 'none'`を設定してください。ギガサイト便にはこの設定を管理画面から確認できます。

### YouTube動画を埋め込みたい場合、どうすれば安全に共有できますか？

埋め込みURLを`youtube-nocookie.com`ドメイン（`https://www.youtube-nocookie.com/embed/VIDEO_ID`）に変更するとクッキー追跡を減らせます。レビュー目的であれば、スクリーンショットを静止画として埋め込む方法がより安全です。

## 関連記事

- [クリックジャッキングを含むHTMLを共有するときのリスクと対策](https://giga-site.com/articles/clickjacking-risk-risk-countermeasure/index.md)
- [http混在を含むHTMLを共有するときのリスクと対策](https://giga-site.com/articles/mixed-content-risk-risk-countermeasure/index.md)
- [XSSを含むHTMLを共有するときのリスクと対策](https://giga-site.com/articles/xss-risk-risk-countermeasure/index.md)
- [オープンリダイレクトを含むHTMLを共有するときのリスクと対策](https://giga-site.com/articles/open-redirect-risk-risk-countermeasure/index.md)
- [AI生成HTMLにiframe埋め込みが残っていないか確認する方法](https://giga-site.com/articles/iframe-embed-check/index.md)
- [社外レビュー前にiframe埋め込みを検出するチェックリスト](https://giga-site.com/articles/iframe-embed-external-review-checklist/index.md)

```json
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "iframe埋め込みを含むHTMLを共有するときのリスクと対策",
  "description": "iframe埋め込みを含むHTMLを安全に共有したい担当者向け。外部送信リスク・クリックジャッキング・サードパーティクッキーの問題と、それぞれの対処法を説明します。",
  "datePublished": "2026-06-25",
  "dateModified": "2026-06-25",
  "mainEntityOfPage": "https://giga-site.com/articles/iframe-embed-risk-countermeasure",
  "url": "https://giga-site.com/articles/iframe-embed-risk-countermeasure",
  "inLanguage": "ja",
  "image": "https://giga-site.com/og-image.png",
  "articleSection": "セキュリティ",
  "author": {
    "@type": "Organization",
    "name": "ギガサイト便"
  },
  "publisher": {
    "@type": "Organization",
    "name": "ギガサイト便"
  },
  "mainEntity": [
    {
      "@type": "Question",
      "name": "iframeにsandbox属性を付けると動作しなくなる場合はどうすればよいですか？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "必要な機能に応じてsandboxの値を追加します。フォームが必要なら`allow-forms`、ポップアップが必要なら`allow-popups`を追加してください。ただし`allow-same-origin`と`allow-scripts`を同時に使うとsandboxの効果が著しく低下するため避けてください。"
      }
    },
    {
      "@type": "Question",
      "name": "自社のHTMLが他者のサイトにiframeで埋め込まれるのを防ぐにはどうすればよいですか？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "サーバーが返すHTTPヘッダーに`X-Frame-Options: DENY`または`Content-Security-Policy: frame-ancestors 'none'`を設定してください。ギガサイト便にはこの設定を管理画面から確認できます。"
      }
    },
    {
      "@type": "Question",
      "name": "YouTube動画を埋め込みたい場合、どうすれば安全に共有できますか？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "埋め込みURLを`youtube-nocookie.com`ドメイン（`https://www.youtube-nocookie.com/embed/VIDEO_ID`）に変更するとクッキー追跡を減らせます。レビュー目的であれば、スクリーンショットを静止画として埋め込む方法がより安全です。"
      }
    }
  ]
}
```
