こんにちはー、ニアです。
Windows 11付属の「Snipping Tool」とWindows 10付属の「切り取り&スケッチ」ですが、3月24日(米国時間)にMicrosoftから脆弱性の修正のアップデートがリリースされました。アプリの使い方によっては、情報漏洩対策のために、早めにアップデートしておきましょう!
- Windows 11のSnipping Tool: バージョン 11.2302.20.0以降
- Windows 10の切り取り&スケッチ: バージョン 10.2008.3001.0以降
1. CVE-2023-28303: PNG画像を編集し上書きすると、編集前のデータが残ってしまう可能性がある件
このアップデートで修正される脆弱性「CVE-2023-28303」は、
- Snipping ToolでPNG形式の画像ファイルを開く
- Snipping Tool上で編集し、上書き保存する
を行った時、編集前のデータが残ってしまう可能性があるというものです。(深刻度は「LOW」)
これで問題になるのは、プライバシー対策のためにスクリーンショットを加工(黒塗りやトリミングなど)したのに、加工前のデータが復元されるリスクがあるということです。
画像を新規に保存したり、コピー&ペーストした場合は影響しないとのことです。
2. 問題の再現性の検証をしてみた
手元にアップデートする前のWindows 11のSnipping Toolが偶々あったので、以下のPNG画像をSnipping Toolで編集して、CVE-2023-28303の再現性の検証をしてみました。
検証に使ったSnipping Toolのバージョンは11.2302.4.0です。
そのSnipping Tool上でPNG画像を開き、以下のようにトリミングをして、上書き保存します。
PNG画像はバイナリエディタで開くと、データの末尾側に「49 45 4E 44」で表された、PNG画像の終端を表すIENDチャンクがあります。
先ほどSnipping ToolでトリミングしたPNG画像をバイナリエディタで開くと、IENDチャンクがデータの途中で見つかります。このIENDチャンクこそトリミングしたPNG画像の本来の終端であり、以降に残っているのはトリミング前のデータの残骸ということになります。もしそこに黒歴史データが含まれていたらアカンやつです。
ちなみに、Windows付属のペイントでトリミングした場合は、上記の現象は発生しませんでした。
またアップデート後のSnipping Toolでトリミングした場合も、上記の現象は発生しませんでした。
エクスプローラーでよく見ると、アップデート前のSnipping Toolでトリミングして上書き保存したPNG画像(lorem-ipsum-old-snt.png)とトリミング前のPNG画像(lorem-ipsum.png)で、ファイルサイズが変わっていないのです。(本来なら少なくとも37KBより小さなサイズになるはず)
なお、アップデート前のSnipping Toolでトリミングして上書き保存したPNG画像を、アップデート後のSnipping Toolで開いてそのまま上書き保存すると、編集前のデータの部分(本来のIENDチャンク以降にあるデータの残骸)は切り落とされました。
3. おわりに
今回は、Windows 11付属の「Snipping Tool」とWindows 10付属の「切り取り&スケッチ」のアップデートをしておこうという喚起と、アップデート前のSnipping Toolで問題の再現性の検証をしました。
アップデートの定期的な確認は大事ですね。
[END]