Notepad++ is a free and open-source source code editor. Prior to 8.9.7, Notepad++ validates the backupFilePath attribute from session.xml with std::wstring::starts_with against the expected backup directory without path normalization, allowing parent-directory sequences during snapshot-mode restoration to read an arbitrary user-readable file outside the backup directory into an editor tab. This issue is fixed in version 8.9.7.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-22"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52886.json"
}{
"extracted_events": [
{
"introduced": "0"
},
{
"fixed": "8.9.7"
}
],
"source": [
"AFFECTED_FIELD",
"REFERENCES"
]
}
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-52886.json"
[
{
"deprecated": false,
"digest": {
"line_hashes": [
"125086551666048332893396166433709575974",
"197454380087308052809824340913507577080",
"162740874957746219447733109533835835319",
"310153036149515223832662661769317652903",
"67370107506546072167298007906290293336",
"117440036000797918552134062783648197238",
"61322393409966154869913653700189900049",
"308614811163060984834273123717164695427",
"306554050350215031605204350278439567991",
"213525872368709099174499812450970749813",
"143694703225930165766555446214854749007",
"198894256613141137511103269672253497945",
"241897608214936184402853912300520175398",
"30016712392098672098310149226847510508",
"188839656448995255909661422048396188611",
"50206592733994361503178355877174674989",
"83503758164495065531992081966533721879",
"237023692041653281306064909820868561576",
"299300327002158385661628639636759465158",
"203062746188016324825868390406714599822",
"251310782762768289555157381769317444859",
"248976372372915337635209723111200711476",
"234073119568777317145818912969928629253"
],
"threshold": 0.9
},
"id": "CVE-2026-52886-37fc05c0",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/notepad-plus-plus/notepad-plus-plus/commit/7e66f36db666a13b09fb5c31232ab2ca1c2ebccc",
"target": {
"file": "PowerEditor/src/Parameters.cpp"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "132311441769123653025704024015927114070",
"length": 5508
},
"id": "CVE-2026-52886-3db864ea",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/notepad-plus-plus/notepad-plus-plus/commit/7e66f36db666a13b09fb5c31232ab2ca1c2ebccc",
"target": {
"file": "PowerEditor/src/Parameters.cpp",
"function": "NppParameters::getSessionFromXmlTree"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "321789678466323583525587903832696399039",
"length": 2313
},
"id": "CVE-2026-52886-77046d11",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/notepad-plus-plus/notepad-plus-plus/commit/6634650414ff91220a4c353b7fe5ad741af0f9f9",
"target": {
"file": "PowerEditor/src/WinControls/AboutDlg/AboutDlg.cpp",
"function": "AboutDlg::run_dlgProc"
}
},
{
"deprecated": false,
"digest": {
"line_hashes": [
"73934179812655448165055737310699482624",
"165596075505432413455088505965299296812",
"15697846664367097651332048867224774793",
"327363084166932039838311470772824169691",
"27658911648692079515982892510481891031"
],
"threshold": 0.9
},
"id": "CVE-2026-52886-de8dc4ca",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/notepad-plus-plus/notepad-plus-plus/commit/6634650414ff91220a4c353b7fe5ad741af0f9f9",
"target": {
"file": "PowerEditor/src/WinControls/AboutDlg/AboutDlg.cpp"
}
}
]
"2026-09-11T08:19:24Z"