セキュリティ

HTMLソースのコメントに残る社内メモ・TODOを公開前に消す

画面には出ないHTMLコメントに、社内向けのメモやTODO、検討中の文言が残っていることがあります。ソースを見れば誰でも読めるため、公開前に消さないと思わぬ情報が漏れます。コメントやデバッグ記述に潜む社内情報を見つけて消す方法を整理します。

コメントに残りがちな情報

HTMLのコメントは画面に表示されませんが、ソースを開けば誰でも読めます。制作の過程で書いた『この金額は社内確認待ち』『担当の○○さんに要確認』といったメモが、そのまま公開されてしまうことがあります。

ほかにも、検討中で却下になった文言、別案の価格、社内システムのURL、デバッグ用の出力など、外に出すべきでない情報がコメントやスクリプトに残りがちです。本文だけ整えても、裏側に痕跡が残ります。

公開ページは関係者以外も見られる前提です。ソースに社内向けの記述が残っていると、意図しない相手にプロジェクトの内情が伝わるおそれがあります。

なぜ見落とすのか

コメントは画面に出ないので、完成画面を確認しただけでは存在に気づけません。プレビューで問題なく見えても、ソースには消し忘れが残っていることがあります。

制作中は『あとで消す』つもりで書いたメモが、納期に追われてそのまま公開されるケースが典型です。一時的なメモほど消し忘れやすいという矛盾があります。

AIや既存テンプレートから生成したHTMLには、生成時の説明コメントやプレースホルダが残ることもあります。自分で書いた覚えがなくても、コメントの確認は必要です。

よくあるNG例と安全な直し方

HTMLソースのコメントに残る社内メモ・TODOを公開前に消すでは、「検索に出さない」と「見られないようにする」を混同しないことが重要です。noindexやrobots.txtは検索エンジンへの指示であり、アクセス制限そのものではありません。

安全に共有するには、誰に見られると困るかを先に決め、URL共有だけで足りるのか、認証や期限が必要なのかを選びます。共有相手と機密度が決まったら、URLのみ・パスワード・メール認証・会社ドメイン認証のどれで渡すかを選びます。

  • NG: 機密情報入りHTMLを認証なしURLで共有し、noindexだけで安心する
  • OK: パスワード・メール認証・会社ドメイン認証で閲覧者を絞る
  • NG: テスト用APIキーや社内URLをHTML内に残したまま渡す
  • OK: 公開前に外部送信先、秘密情報、フォーム送信先を確認する

公開前に検出する手順

公開前に、ソースから不要なコメントやデバッグ記述を洗い出します。次の手順で確認すると漏れにくくなります。

検索でまとめて洗い出すのがコツです。目視だけで探すと、長いソースの中ほどに残ったメモを見落としやすいためです。最後はブラウザのソース表示で実物を確認します。

  1. エディタでHTMLを開き、コメント記号で全文検索して該当箇所を一覧化する
  2. TODO・FIXME・確認・仮・debug などのキーワードでも検索する
  3. スクリプト内のコンソール出力やデバッグ用の記述を確認する
  4. 残す必要のないコメントはすべて削除する
  5. 削除後にブラウザでソースを表示し、社内向け記述が消えたか目視で確認する

CSS・JSや隠し要素も確認する

情報が残るのはHTMLコメントだけではありません。CSSやJavaScriptのファイルにも、コメントや使っていない設定値、開発用のメモが残ることがあります。ZIPで一式を共有する場合は、これらも対象に含めます。

画面で非表示にしている要素(display:noneなどで隠した部分)も、ソースには残っているため読み取れます。『見えないから消した』ではなく、ソースから消すことが必要です。

デバッグ用にコンソールへ出力する記述は、開発者ツールを開いた人に内容が伝わります。公開版では出力を止めるか削除しておきます。

仕組みで防ぐ工夫

毎回手作業で確認するのは漏れが出ます。公開前チェックの定型リストを用意し、コメント検索を必ず通す手順にしておくと、消し忘れが減ります。

noindexが付いていても、これは検索結果に出さないだけで、ソースを読まれること自体は防げません。アクセスを制限したいなら認証を併用し、見せたい相手を絞ります。

ギガサイト便では認証方式で閲覧者を限定でき、公開期限で公開を区切れます。ただしソースのコメント掃除は公開前の作業です。コメントを消したうえで、必要なら認証で範囲を絞って共有してください。

よくある質問

HTMLコメントは画面に出ないのに問題になりますか

なります。コメントは画面表示には出ませんが、ソースを開けば誰でも読めます。社内向けのメモやTODO、検討中の文言が残っていると公開時に漏れるため、削除が必要です。

どんなキーワードで探せば消し忘れを見つけられますか

コメント記号での全文検索に加え、TODO・FIXME・確認・仮・debug などのキーワードでも検索すると、社内向けの記述やデバッグ記述を見つけやすくなります。

CSSやJavaScriptも確認すべきですか

確認すべきです。CSSやJSにもコメントや開発用のメモ、使っていない設定値が残ることがあります。ZIPで一式を共有する場合は、これらのファイルも対象に含めてください。

画面で非表示にした要素なら見られませんか

見られます。display:noneなどで隠した要素もソースには残っているため読み取れます。見せたくない情報は非表示ではなくソースから削除し、必要なら認証で閲覧者を絞ってください。

noindexを設定すれば認証は不要ですか?

不要ではありません。noindexは検索結果への表示を抑えるための指定で、URLを知っている人の閲覧を止める仕組みではありません。閲覧者を制限したい場合は認証が必要です。

関連記事

セキュリティ

共有HTMLに載せる情報を最小化する考え方

確認用HTMLに本番の顧客データや内部情報をそのまま貼っていませんか。共有する情報が多いほど漏えい時のダメージは大きくなります。必要なものだけを残す「データ最小化」の考え方で、共有HTMLから何を削り何を残すかを解説します。

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

アップロードファイルにマルウェアを混ぜない注意

HTMLやZIPは複数の素材を寄せ集めて作られがちで、ダウンロードした素材に不審なコードが紛れていることがあります。アップロードしたファイルが閲覧者にそのまま届く以上、マルウェア混入を防ぐ確認手順を知っておくことが重要です。

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

共有HTMLの画像に残るExif・位置情報を消してから渡す

写真の本文では場所を伏せていても、Exifデータに撮影地や端末情報が残っていると情報が漏れます。共有HTMLに画像を載せる前に確認すべき項目と、位置情報の削除手順を解説します。

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

スクショ・画面共有での情報漏えいを減らす工夫

共有URLを認証で守っても、開いた画面が撮られたり画面共有で映れば情報は外に出ます。スクショを完全には止められないからこそ、何を画面に表示するかと、撮られても被害が小さい設計が重要です。現実的な情報漏えい低減策を整理しました。

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