Vulnerability 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.
CVSS Score
HIGH
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Notepad-Plus-Plus | Notepad\+\+ | 8.9.6.1 |
Related Weaknesses (CWE)
References
- https://github.com/notepad-plus-plus/notepad-plus-plus/commit/ea1508855e9c4528f6Patch
- https://github.com/notepad-plus-plus/notepad-plus-plus/security/advisories/GHSA-ExploitPatchVendor Advisory
FAQ
What is CVE-2026-52884?
CVE-2026-52884 is a vulnerability with a CVSS score of 7.8 (HIGH). 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) ...
How severe is CVE-2026-52884?
CVE-2026-52884 has been rated HIGH with a CVSS base score of 7.8/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-52884?
Check the references section above for vendor advisories and patch information. Affected products include: Notepad-Plus-Plus Notepad\+\+.