Critical Notepad++ Vulnerabilities Allow Attackers to Execute Arbitrary Code
2026/05/28 CyberSecurityNews — Windows 向けの人気のオープンソース・テキストエディタ Notepad++ に存在する、3 件の脆弱性に対処する緊急セキュリティ・アップデートが公開された。そのうちの 2件は任意のコード実行の脆弱性であり、被害者のマシン上での悪意のプログラムのサイレント実行を、攻撃者に許す可能性がある。すでに Notepad++ 開発チームは、2026年5月26日にバージョン v8.9.6.1 をリリースし、すべての問題に対処している。バージョン 8.9.6 以下を使用しているユーザーは、速やかにアップデートする必要がある。

Notepad++ の脆弱性
このアップデートでは、以下の脆弱性が修正された。
| CVE ID | Severity | Description |
|---|---|---|
| CVE-2026-48770 | High | Crash via malformed XML structure |
| CVE-2026-48778 | Critical | Arbitrary code execution via config.xml |
| CVE-2026-48800 | Critical | Arbitrary code execution via shortcuts.xml |
3 件の脆弱性の中で最も深刻なものは CVE-2026-48778 であり、Notepad++ の “config.xml” ファイル内の <GUIConfig name=”commandLineInterpreter”> に関連するものだ。
このエディタは、”Parameters.cpp” 内の NppXml::value() を通じて上記の値を読み取った後に、ホワイトリスト/デジタル署名などのチェックを一切行わずに保存する。
具体的に言うと、ユーザーが File → Open Containing Folder → cmd を実行すると、アプリケーションは攻撃者が制御する文字列でコマンド・オブジェクトを生成し、そのまま ShellExecute() に渡す可能性が生じる。結果として、攻撃者が仕込んだ任意のファイルが実行される。
簡単な検証として、XML タグ内に “calc.exe” を指定すると、本来のコマンド・プロンプトではなく Windows 電卓が起動した。つまり、完全なコード実行の能力が実証されたことになる。
脆弱性 CVE-2026-48778 の現実的な攻撃経路として、研究者たちは以下を挙げている。
- コンフィグ・ファイルの書き換え:同一ユーザー権限で動作する任意のプロセスによる “%APPDATA%\Notepad++\config.xml” の改変。
- 悪意のショートカット (.lnk):-settingsDir= フラグにより、攻撃者が制御するコンフィグ・ディレクトリへのリダイレクト。
- クラウド同期汚染:Notepad++ のクラウドパス設定の悪用による、侵害されたクラウド・ストレージ経由での改竄。
- アーカイブ展開を用いたソーシャル・エンジニアリング:AppData への改竄済みコンフィグの配置による誘導。
脆弱性 CVE-2026-48800 も、同様の手法での悪用が可能だが、こちらは “shortcuts.xml” が対象となる。
対策
すでに Notepad++は、公式ページで v8.9.6.1 をリリースし、3 件の脆弱性に対応している。ユーザーに対して強く推奨されるのは、速やかなアップデートである。
さらに、追加対策としてセキュリティ研究者が推奨するのは、”cmd.exe” や “powershell.exe” などの許可されたコマンドライン・インタープリタでのホワイトリスト実装/実行ファイルパスのシステム・ディレクトリ検証/シェルコマンド実行前のユーザー確認ダイアログ導入などである。
エンタープライズ環境において、共有された設定ディレクトリや、クラウド同期された設定ディレクトリを使用する場合には、優先的なパッチ適用が必要である。
訳者後書:Notepad++ における一連の脆弱性は、設定ファイルを読み込む際における入力値の検証不足に起因します。 脆弱性 CVE-2026-48778 では、設定ファイル内の特定の項目から値を読み込むプログラムの処理において、デジタル署名やホワイトリストによる安全性のチェックを一切行わずに保存してしまう不備がありました。同様の弱点は shortcuts.xml を対象とする CVE-2026-48800 にも存在し、改竄された設定ファイルを経由して、外部から指定された任意のプログラムが実行されてしまう状態を招いています。ご利用のチームは、ご注意ください。よろしければ、Notepad++ での検索結果も、ご参照ください。
You must be logged in to post a comment.