Joplin: Path traversal in resource sync — silent arbitrary file write outside the resource directory
cve-program · CVE-2026-49453
PublishedJoplin is an open source note-taking and to-do application that organises notes and lists into notebooks. Prior to 3.6.15 and 3.7.2, Joplin accepts synchronized resource metadata whose id or file_extension contains parent-directory or path-separator characters. BaseItem.unserialize() stores the unvalidated fields, resourceFilename() concatenates them into a destination path, and ResourceFetcher writes the attacker-controlled resource blob outside the resource directory during background synchronization. An attacker with write access to a configured sync target or shared notebook can create or overwrite files at an attacker-chosen existing path without user interaction. This issue is fixed in versions 3.6.15 and 3.7.2.
Read the publisher's advisoryAffected versions, risk and source history
Related advisories and sources
Publishers link these advisories through the identifiers shown below. A shared identifier or date alone does not tell you whether your software is affected or whether the advisories describe the same cause.
CVE-2026-49453 · CVE overview and exploitation status
cve-program · CVE-2026-49453
- https://github.com/laurent22/joplin/security/advisories/GHSA-r24r-gp6h-cwgf
- https://github.com/laurent22/joplin/pull/15540
- https://github.com/laurent22/joplin/pull/15672
- https://github.com/laurent22/joplin/commit/18e0b08c282c89ae51612c4eff67af2a45ff5163
- https://github.com/laurent22/joplin/commit/50518073740c4501058e366300b42c2f1925cb05
Related changes
Linked by CVE identifierNo related changes are available here.