セキュリティ

社外レビュー前にhttp混在を検出するチェックリスト

取引先にHTMLファイルを送る前に「http混在がないか」を確認するフローが社内にないと、毎回担当者の記憶頼みになります。この記事では、送付前の10分チェックをルーティン化できるよう、ブラウザ確認・ソース検索・共有設定の3段階で構成した実践的なチェックリストを提供します。

なぜ危ないのか

社外レビュー用のHTMLは「一時的な共有」と軽視されがちですが、クライアントのPCでブラウザの警告が表示されると、会社やサービスの技術水準を疑われます。特にセキュリティ意識の高い企業の担当者は「このベンダーは暗号化されていない通信をそのまま送ってきた」と捉えます。一度失った信頼はその後の受注に影響します。

http混在が残った状態で社外公開すると、そのページを経由して行うフォーム送信やクリックイベントが傍受される可能性があります。デザインカンプにダミーの個人情報(氏名・電話番号など)が入力サンプルとして埋め込まれている場合、傍受されたデータが実際のPII(個人識別情報)として扱われるリスクもゼロではありません。

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

ソースで見る場所

チェック1:ターミナルで `grep -rni 'src=["\']http://' .` を実行し、http://を参照しているsrc属性を全件抽出します。scriptタグ・imgタグ・videoタグ・audioタグが対象です。件数がゼロになれば最初の関門はクリアです。

チェック2:Chromeで該当HTMLをHTTPSサーバー上で開き、開発者ツールの「セキュリティ」タブを確認します。「このページは安全ではありません」と表示される場合、「証明書」「接続」「リソース」の各項目を順に確認して問題箇所を特定してください。「ネットワーク」タブで「スキーム:http」でフィルタリングする方法でも混在リソースを一覧できます。

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

安全に共有する設定

チェックリストをクリアしたHTMLは、会社ドメイン認証またはパスワード保護付きのURLで共有します。ギガサイト便のような認証付き共有サービスはHTTPS配信が標準なので、混在チェック済みのHTMLをアップロードするだけで安全な共有環境が整います。ローカルのHTTPサーバーで動作確認してからアップロードすると、手順の抜け漏れを最小化できます。

共有URLを送付するメールに「このURLは〇月〇日まで有効です」と明記します。期限後はURLを無効化し、修正版は新しいURLで再送します。同じURLで差し替えることも技術的には可能ですが、相手がキャッシュを見ている可能性があるため、新URL+旧URL無効化の組み合わせが最も確実です。

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

再発防止ルール

このチェックリストを社内のNotionやGoogleドキュメントに「HTMLレビュー送付前チェックリスト」として保存し、担当者が変わっても同じ手順を踏めるようにします。チェック済みのステータスを記録する列をスプレッドシートに追加すると、複数案件を並行して進めるときの管理が楽になります。

生成AIのプロンプトテンプレートに「外部リソースはhttps://で記述する。http://のURLは一切使わない」という制約文を追加してチームで共有します。月次レビューでプロンプトの有効性を確認し、Mixed Contentが再発した案件があれば制約文を更新する習慣を設けてください。

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

よくある質問

チェックリストの確認はHTMLファイルが1つでも複数でも同じ手順ですか?

複数ファイルの場合はgrepコマンドを `-r`(再帰)オプション付きで実行してディレクトリ全体を一括スキャンしてください。ファイルが多いほど目視確認より自動化が有効です。

外部フォームサービス(Typeformなど)をiframeで埋め込んでいる場合はどうなりますか?

埋め込み先のサービスがHTTPS対応していれば問題ありません。ただしiframe内のコンテンツがhttp://リソースを読み込んでいる場合はブラウザが制限する可能性があるため、埋め込みサービスのHTTPS対応状況も確認してください。

社内LANのHTTPサーバーにHTMLを置いて社内でのみ共有する場合もMixed Contentは問題になりますか?

社内HTTPサーバーで配信する場合はページ自体がhttpなのでMixed Contentは発生しません。ただし社外公開に切り替えた瞬間に問題が顕在化するため、社外共有前に必ずHTTPS環境でのチェックを実施してください。

関連記事

セキュリティ

http混在を含むHTMLを共有するときのリスクと対策

http混在を含むHTMLを共有した場合のリスクを把握し、適切な対処法を選びたい方向け。ブラウザによる表示ブロックや通信傍受のリスクを具体的に示しながら、修正・代替策・共有設定の3つの観点から対策を解説します。

5分で読める
セキュリティ

AI生成HTMLにhttp混在が残っていないか確認する方法

AIが生成したHTMLにhttp://のリソースが混在していないか確認したい方向け。ブラウザコンソールでの警告の読み方、grepによる一括検索、修正後の動作確認まで、公開前に完結できる手順を具体的に示します。

5分で読める
セキュリティ

http混在を防ぐAIプロンプトと公開前スキャン

AIを使ってHTMLを繰り返し生成する作業者向け。http混在を生成前に防ぐプロンプト設計と、生成後に素早くスキャンする方法を組み合わせ、毎回の手動チェック工数を減らしながらセキュリティ品質を維持する方法を紹介します。

5分で読める
セキュリティ

社外レビュー前にクリックジャッキングを検出するチェックリスト

社外レビュー用にHTMLを共有する前にクリックジャッキングリスクを洗い出したい方向け。ソース検索からブラウザ開発者ツールを使った検証手順まで、見落としがちな確認項目を網羅し、安全な公開判断ができるようになるチェックリストを提供します。

5分で読める
セキュリティ

社外レビュー前にXSSを検出するチェックリスト

社外レビューを依頼する前にAI生成HTMLのXSSリスクを洗い出したい開発者・デザイナー向け。inline scriptやevalの有無、外部送信先の特定方法など、公開前に一度だけ通るべき手順を解説する。

6分で読める
「セキュリティ」の記事をもっと見る →