Read the docs
TI-2026-37981 Aliases CVE-2026-52885

Notepad++ TOCTOU: HMAC Checks Disk, Executes from Memory

Priority HIGH 68CWE-367Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
None
Attack complexity
High
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

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.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00125 2nd percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed notepad-plus-plus (notepad-plus-plus): 8.9.6.4

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
notepad-plus-plusnotepad-plus-plusbefore 8.9.6.48.9.6.4Patch availableCNA
  • notepad-plus-plus Vendornotepad-plus-plus Affected before 8.9.6.4 Fixed in 8.9.6.4 Patch available CNA

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:notepad-plus-plus:notepad\+\+:*:*:*:*:*:*:*:*before 8.9.6.4Vulnerablenotepad-plus-plus
  • cpe:2.3:a:notepad-plus-plus:notepad\+\+:*:*:*:*:*:*:*:* Versions before 8.9.6.4 Vulnerable ·notepad-plus-plus

Remediation

  • Fix · CNA notepad-plus-plus (notepad-plus-plus) Fixed in 8.9.6.4

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-52885

References

  • TI-2025-14195 Notepad++ < 8.8.9 WinGUp Updater Lacks Update Integrity Verification KEVCVSS 4.0HIGH 7.7
  • TI-2026-36070 Notepad++: Arbitrary Code Execution via shortcuts.xml UserCommand Injection CVSS 3.1HIGH 7.8
  • TI-2026-36048 Notepad++: Arbitrary Code Execution via config.xml commandLineInterpreter CVSS 3.1HIGH 7.8
  • TI-2026-04836 Stack-Based Buffer Overflow in Notepad++ File Drop Handler leads to DoS CVSS 3.1HIGH 7.8
  • TI-2023-20921 Notepad++ vulnerable to heap buffer write overflow in Utf8_16_Read::convert CVSS 3.1HIGH 7.8
  • TI-2022-13732 Buffer overflow in function Notepad_plus::addHotSpot in Notepad++ v8.4.3 and earlier… CVSS 3.1MEDIUM 6.5
See all 19 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences