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.
CVE-2026-52885
This medium-severity CVE scores 6.3 under NVD CVSS v3. EPSS exploit probability: 0.1%, top 97% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- Lower severity and no public exploit yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 6.3
- EG Score
- 6.3(medium)
- EPSS
- 3.0%
- KEV
- Not listed
Published
June 26, 2026
Last Modified
June 29, 2026
Advisory Details (2)
Auto-updated Jun 26, 2026TOCTOU: HMAC Checks Disk, Executes from Memory · Advisory · notepad-plus-plus/notepad-plus-plus · GitHub
https://github.com/notepad-plus-plus/notepad-plus-plus/security/advisories/GHSA-qm4c-qg8p-qfcrcommit 4f7563c7c7f8 (notepad-plus-plus/notepad-plus-plus)
Fix landed in notepad-plus-plus/notepad-plus-plus commit 4f7563c7c7f8 — awaiting tagged release
https://github.com/notepad-plus-plus/notepad-plus-plus/commit/4f7563c7c7f8ffa0d795ec86a7777067c7d644b5Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 20× in last 7d / 41× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-07-12 05:46 UTCEPSS rescore
- 2026-07-12 05:08 UTCEG score recompute
- 2026-07-11 08:27 UTCEPSS rescore
- 2026-07-11 08:27 UTCEPSS rescore
- 2026-07-11 02:52 UTCEG score recompute
- 2026-07-10 00:36 UTCEG score recompute
- 2026-07-09 19:10 UTCEPSS rescore
- 2026-07-09 19:10 UTCEPSS rescore
- 2026-07-08 22:12 UTCEG score recompute
- 2026-07-08 15:16 UTCEPSS rescore
- 2026-07-08 15:16 UTCEPSS rescore
- 2026-07-07 19:56 UTCEG score recompute
- 2026-07-07 13:46 UTCEPSS rescore
- 2026-07-07 13:46 UTCEPSS rescore
- 2026-07-06 17:39 UTCEG score recompute
- 2026-07-06 16:27 UTCEPSS rescore
- 2026-07-06 16:27 UTCEPSS rescore
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-05 15:23 UTCEG score recompute
- 2026-07-04 13:04 UTCEG score recompute
- 2026-07-04 06:31 UTCEPSS rescore
- 2026-07-03 10:48 UTCEG score recompute
- 2026-07-02 08:28 UTCEG score recompute
- 2026-07-01 06:12 UTCEG score recompute
Show 16 moreShow fewer
- 2026-06-30 23:22 UTCEPSS rescore
- 2026-06-30 03:54 UTCEG score recompute▼ 1.20
- 2026-06-29 21:26 UTCNVD updateCVSS v3 → 6.3 · severity → MEDIUM
- 2026-06-29 16:44 UTCEG score recompute
- 2026-06-29 14:06 UTCEPSS rescore
- 2026-06-29 14:06 UTCEPSS rescore
- 2026-06-29 05:33 UTCEG score recompute
- 2026-06-28 18:22 UTCEG score recompute
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 07:12 UTCEG score recompute
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-27 20:03 UTCEG score recompute
- 2026-06-27 08:53 UTCEG score recompute
- 2026-06-26 21:43 UTCEG score recompute
- 2026-06-26 21:42 UTCNVD updatefirst tracked
Related CVEs(same CWE)
Frequently asked(5)
What is CVE-2026-52885?
When was CVE-2026-52885 disclosed?
Is CVE-2026-52885 actively exploited?
What is the CVSS score of CVE-2026-52885?
How do I remediate CVE-2026-52885?
Dependency Blast Radius
Explore the affected products and dependency analysis for CVE-2026-52885
Is Your Infrastructure Affected by CVE-2026-52885?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.