notepad-plus-plusのnotepad++におけるTime-of-check Time-of-use (TOCTOU) 競合状態の脆弱性
タイトル notepad-plus-plusのnotepad++におけるTime-of-check Time-of-use (TOCTOU) 競合状態の脆弱性
概要

Notepad++は無料でオープンソースのソースコードエディタです。バージョン8.9.6.4以前では、NppCommands.cppはユーザーコマンド実行時(チェック時点)にディスク上のshortcuts.xmlのHMACを確認します。しかし、コマンドのペイロードはアプリケーション起動時に読み込まれ、その後はディスク上のファイルと再同期されないメモリ内の_userCommandsベクターから取得されます(使用時点)。起動とコマンド実行の間にshortcuts.xmlを差し替えると、HMACチェックはクリーンなファイルを検証しつつ、悪意のあるコマンドを実行します。shortcuts.xmlへの書き込み権限を持つ攻撃者は、起動前に悪意あるバージョンをディスクに置き、その直後に正規のファイルに戻すことが可能です。実行時のHMACチェックは正規のファイルを検証するためチェックに合格しますが、悪意あるペイロードはメモリから実行されます。この脆弱性はバージョン8.9.6.4で修正されました。

想定される影響 ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 ・当該ソフトウェアが完全に停止する可能性があります。 
対策

ベンダ情報を参照して適切な対策を実施してください。

公表日 2026年6月26日0:00
登録日 2026年6月30日11:19
最終更新日 2026年6月30日11:19
CVSS3.0 : 警告
スコア 6.3
ベクター CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
影響を受けるシステム
notepad-plus-plus
notepad++ 8.9.6.4 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
変更履歴
No 変更内容 変更日
1 [2026年06月30日]
  掲載
2026年6月30日11:19

NVD脆弱性情報
CVE-2026-52885
概要

Notepad++ is a free and open-source source code editor. Prior to 8.9.6.4, NppCommands.cpp checks the HMAC of the on-disk shortcuts.xml at the moment a user command fires (Time-of-Check). However, the command payload is taken from the in-memory _userCommands vector, which is populated at application startup and never re-synchronized with the on-disk file (Time-of-Use). Swapping shortcuts.xml between startup and command execution causes the HMAC check to validate a clean file while a malicious command runs. An attacker with write access to shortcuts.xml places a malicious version on disk before launch, then immediately restores the legitimate file. The HMAC check at execution time validates the restored legitimate file (check passes), while the malicious payload executes from memory. This vulnerability is fixed in 8.9.6.4.

公表日 2026年6月27日6:16
登録日 2026年6月29日4:17
最終更新日 2026年6月30日3:51
関連情報、対策とツール
共通脆弱性一覧