ChogeLog

主にセキュリティ関係の記録やWrite-up。たまーに日記も。

メモ帳(notepad.exe)の自動保存機能を調べてみた

概要

Windows 11では2023年9月頃にメモ帳(notepad.exe)に自動保存機能が追加された。
今回はたまたまメモ帳の自動保存先が分かったため、保存している内容を確認する方法 + メモ帳の挙動を調べてみた。

初回起動時のメッセージ

結論として、メモ帳が生成する特定のファイルを確認することで、自動保存している内容や、メモ帳が直近で開いていたファイルのフルパスや内容を簡単に確認可能なことが分かった。

自動保存されたメモの復元方法

まず、メモ帳を開くと以下のパスにbinファイルが生成される。(ファイル名はランダム?)

%localappdata%\Packages\Microsoft.WindowsNotepad_8wekyb3d8bbwe\LocalState\TabState 
(C:\Users\[ユーザ名]\AppData\Local\Packages\Microsoft.WindowsNotepad_8wekyb3d8bbwe\LocalState\TabState)

binファイルの生成

ここで試しに文字を入力してみるが、入力するだけではbinファイルに内容は反映されない。
ちなみにbinファイルの中身はこんな感じ。

.bin生成時の中身

次に、文字を入力した状態でウィンドウを閉じてみる。(※タブではない)

この状態でbinファイルを開くと以下のような内容になっており、自動保存された内容が一部確認できる。

ウィンドウを閉じた(自動保存)後の.binの中身

ただ、この状態では日本語部分が読めないため、文字コードUTF-16に設定して開きなおしてみる。

UTF-16で開いた場合

すると、自動保存されたメモ内容の全文を確認することができた。
あとは本文前後の余計なバイナリを削除すると元の内容を復元できる。

メモ内容の復元

以上の方法で自動保存されたメモ内容を簡単に復元することができた。

binファイルの削除

binファイルはメモ帳のウィンドウを閉じても削除されないが、タブを閉じると削除される。

「タブを閉じる」をクリックすると以下のポップアップが表示される。

ここで「保存しない」をクリックするとbinファイルが削除される。

「保存しない」をクリックした後

ただウィンドウを閉じただけでは自動保存されるためbinファイルは消えないが、明確に「保存しない」を選択した際に削除されることが分かった。

すでに保存されているファイルを開いた場合

保存済みのファイルをメモ帳で開いた際もbinファイルが生成される。
たとえば、デスクトップに保存したテキストファイルを開くと以下のようになる。

デスクトップに保存したテキストファイルを開いた場合

binファイルの内容を確認すると、開いているファイルのフルパスが含まれていることが分かる。
ちなみに、テキストファイル以外であってもbinファイルが生成される。

画像をメモ帳で開いた場合

このbinファイルもウィンドウを閉じただけでは自動保存され、削除されない。
このことから、現在メモ帳に自動保存されている、直近で開いたファイルの履歴が分かる可能性がある。
ただし、こちらもメモ帳のタブを閉じるとbinファイルは削除される。

複数タブを開いた場合

複数のタブを開くと、1つのタブに対して1つのbinファイルが生成される。
たとえば、以下のように3つのタブを開き、それぞれに文字を入力してウィンドウを閉じてみる。

3つのタブに入力

すると、以下のように3つのbinファイルが確認できる。(.0.binと.1.binは除外)

各binファイルの中身は以下のようになっており、それぞれのメモ内容が記録されていることが分かる。

自動保存されないケース

下記のようなケースではメモ内容は自動保存されず、binファイルも生成されない。

  • タブを閉じるなどの操作で、「保存しない」をクリックした場合
  • メモ帳のウィンドウを複数開いている場合、2つ目以降に開いたウィンドウの内容は保存されない
    • ウィンドウを閉じる際に保存する・しないのポップアップが表示される
  • メモ帳の設定画面にて、「メモ帳の起動時」を「新しいウィンドウを開く」に設定している場合
    • この場合も保存する・しないのポップアップが表示される
    • デフォルトでは「前のセッションからコンテンツを開く」になっていると思われる

メモ帳の設定画面

.0.binと.1.binについて

メモ内容が保存されているbinファイルと同名の.0.binと.1.binは以下のタイミングで生成される。

  1. メモ帳を開き、自動保存されている内容を表示する(もしくは保存しているファイルを開く)
  2. メモ内容を編集せず、そのままメモ帳を閉じる
  3. ウィンドウを閉じると.0.binと.1.binが生成される

逆に、メモ内容を編集してウィンドウを閉じるとこれらのファイルは生成されず、すでに存在している場合は削除される。

追記した例

メモ内容をいじって閉じると.0.binと.1.binは消える

ちなみに、.0.binと.1.binの中身が何なのかは不明…

まとめ

現在のWindows 11のメモ帳はデフォルトではメモ内容を自動保存するようになっており、保存されている内容を簡単に確認可能なことが分かった。また、最近メモ帳で開いたファイルの痕跡も残っている可能性があるため、フォレンジックの際に役立つかもしれない…。
メモ帳の自動保存を無効にしたい場合は設定を「新しいウィンドウを開く」にしておきましょう。

参考サイト