Description
Notepad++ is a free and open-source source code editor. In v8.9.6.1, isInTrustedDirectory() does NOT canonicalize the path before checking. It uses a prefix-based check (PathIsPrefix() or equivalent) that matches paths starting with trusted directory strings. A path traversal using ..\..\ after a trusted directory prefix passes the check while resolving to an untrusted location. The CVE-2026-48800 patch adds isInTrustedDirectory() validation in Command::run() (RunDlg.cpp) before calling ShellExecute(). This function checks whether the resolved executable path is under a trusted directory. This vulnerability is fixed in 8.9.6.2.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| notepad-plus-plus | notepad-plus-plus | = 8.9.6.1 | — |
Advisories 1
- WID-SEC-2026-1696 Notepad++: Schwachstelle ermöglicht Codeausführung BSI CERT-Bund (WID) · Jun 28, 2026