スクショをそのままブログに載せて大丈夫? 画像の裏側にある情報の話
画像を小さくして、ファイル名を変えて、これで公開準備OK……と思ったら、まだ確認することがあった。
第1幕:スクショを載せようとしただけなのに
WordPressでブログを作った。
そして、開設初日からマルウェアスキャナーにファイルを検出されるという、なかなか濃い出来事が起きた。
せっかくなので記事にしよう。
証拠となるスクリーンショットもある。
不要な部分を切り抜いて、文字が読めるように調整して、ファイル名も分かりやすく変更した。
完璧やん。
……と思ったところで、ひとつ気になった。
「画像って、見えている部分以外にも情報が入ってるんじゃなかったっけ?」
そう。画像には、見た目だけでは分からない情報が記録されている場合がある。
いわゆるメタデータというやつだ。
第2幕:画像の裏側には何がある?
写真や画像には、ファイルの種類や作成方法によって、さまざまな情報が含まれることがある。
たとえば、撮影日時、カメラの機種、撮影条件、画像を編集したソフトの情報。
スマートフォンやカメラの設定によっては、撮影場所を示すGPS情報が含まれる場合もある。
もちろん、すべての画像に全部の情報が入っているわけではない。
スクリーンショットとカメラ写真でも事情は違うし、PNG、JPEG、WebPといった形式によっても扱いが異なる。
重要なのは、「画像として普通に見えること」と「余計な情報が入っていないこと」は別だということ。
見た目だけでは分からないのである。
第3幕:WordPressが消してくれるんじゃないの?
ここで便利なのがWordPress。
WordPressは画像をアップロードすると、表示に使う縮小画像を生成することがある。
この画像処理では、標準的な設定で多くのメタデータが取り除かれる。
では、何も気にせずアップロードしていいのか?
そこが少し違う。
WordPressでは、アップロードした元画像が保持される場合がある。
また、縮小時のメタデータ処理は、画像処理方法やサイトの設定によって変わることもある。
だから「WordPressに載せたから、画像の隠れた情報も全部消えたはず」と考えるのは危ない。
公開前に、自分で確認したほうが確実だ。
第4幕:メタデータより先に気をつけたいもの
実は、スクリーンショットで怖いのはメタデータだけではない。
むしろ、画像そのものに写り込んでいる情報に注意したい。
たとえば管理画面のスクショ。
画面の上にはログイン名。
ブラウザには管理用URL。
設定画面にはメールアドレス、サーバーのパス、場合によっては認証情報まで表示されているかもしれない。
画像のメタデータを全部消しても、画面に写っている情報は消えない。
そりゃそうやw
だから私は、技術記事にスクショを載せるとき、まず必要な部分だけを切り抜くことにした。
公開する必要がない情報は、切り抜くか、画像上で完全に見えなくする。
特にパスワードやトークンのような秘密情報は、ぼかすだけで安心せず、最初から写さないのが一番いい。
第5幕:画像を公開する前の5つの確認
私の公開前チェックは、こんな感じになった。
① 余計なものが写っていないか
ブラウザのタブ、ブックマーク、管理用URL、ユーザー名、メールアドレス。必要な部分以外はできるだけ切り抜く。
② メタデータが残っていないか
EXIFや位置情報など、公開する必要のない情報がないか確認する。
③ 画像が重すぎないか
大きな写真やアイキャッチは、用途に合わせてサイズやファイル形式を調整する。ただし文字の多いスクショは、読めることを優先する。
④ ファイル名が適切か
スクリーンショット123.png よりも、何の画像なのか分かる名前にしておくと、後から管理しやすい。
⑤ 画像の説明があるか
WordPressの代替テキスト(alt)には、画像の内容が分かる文章を入れる。単なるキーワードの羅列にはしない。
こうして並べると、意外とやることが多い。
画像を1枚載せるだけなのに!w
終幕:見えない情報も、公開の一部
最近は画像を生成するのも、編集するのも、本当に簡単になった。
でも、公開する段階では少しだけ別の視点が必要になる。
写真なら撮影場所。
スクショなら管理画面の情報。
生成画像なら、ファイル形式や付随する情報。
こうしたものを確認するために、私は画像のメタデータをチェックする小さなWebツールも作っている。
大げさなセキュリティシステムではない。
でも、公開前に一度確認する習慣を作るには、こういう単機能ツールがちょうどいい。
何でも自動化すればいいわけではないし、何でも怖がればいいわけでもない。
公開する前に、ちょっと確認する。
それだけでも防げる失敗はある。
というわけで、これからもブログに画像を載せるときは、一度裏側まで見てから公開しようと思う。
……まあ、確認するためのツールを作っていたら、記事を書く時間がなくなるという別の問題はあるんだけどw
※画像のメタデータの扱いは形式・ソフト・WordPressの設定によって異なります。この記事は公開前の基本的な確認ポイントをまとめたもので、完全な安全性を保証するものではありません。
参考資料
WordPress Developer Resources — image_strip_meta
https://developer.wordpress.org/reference/hooks/image_strip_meta/
WordPress Developer Resources — wp_get_original_image_path()
https://developer.wordpress.org/reference/functions/wp_get_original_image_path/