Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDeliver crafted .ctd/.ctz/.ctx document to victim
-
ExploitVictim opens and saves it in CherryTree
-
ExecutionHelper reads ~/.ssh/id_rsa and embeds it into document
-
ImpactAttacker extracts sensitive file from returned document
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Absolute path validation
|
| Exploitation Conditions | Exploitation requires the victim to open an attacker-supplied CherryTree document in one of the XML-based formats (.ctd, .ctz, .ctx) on CherryTree ≤1.7.2 AND to save it - the embed happens at save time (UI:A active interaction). The crafted embedded-file node must specify an absolute or ~/ path and carry no inline data. Disclosure only pays off when the victim subsequently returns or shares the saved document back to the attacker (AT:P), and is limited to files the victim's own account can read. The vector is local (AV:L): there is no network or default-configuration remote path, and the attacker must choose/guess the target file path (e.g., ~/.ssh/id_rsa). These interaction and round-trip requirements materially limit real-world risk below the raw confidentiality impact. |
| Impact | Severity is moderate, and the signals agree on that. The supplied CVSS 4.0 base score is 5.6 with vector AV:L/AC:L/AT:P/PR:N/UI:A/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N: a local vector (AV:L) with an attack requirement (AT:P) and active user interaction (UI:A), yielding high confidentiality impact only (VC:H) and no integrity or availability impact. This is not a remotely automatable flaw - it requires a victim to open and save an attacker-crafted document, and realistically also to return or share the resulting file, which is why AT:P and UI:A are set. The vuln.today decision label is 'this_month' (a routine-patch priority, not act_now/emergency). No EPSS score is provided, there is no CISA KEV listing, and the input contains no confirmed exploit-code marker (references are a GitHub issue report and the VulnCheck advisory, not verified working exploit code), so exploitation status is 'no public exploit identified at time of analysis.' Net: a genuine but user-interaction-gated local file-disclosure issue of medium real-world urgency, not a mass-exploitation threat. One caveat to verify: PR:N marks the document-crafting as unauthenticated, but actual disclosure depends on the victim's own file-read permissions and on the victim handing the saved document back to the attacker. |
| Exploit ScenarioDerived | An attacker sends a victim a crafted CherryTree note file (.ctd, .ctz, or .ctx) containing an embedded-file XML node whose 'filename' attribute is an absolute or ~/ path such as ~/.ssh/id_rsa and that carries no inline data. When the victim opens the document in CherryTree (≤1.7.2) and saves it, CtStorageXmlHelper::_create_image_from_xml trusts the attribute and reads that local file, embedding its contents into the saved document; the sensitive data then leaks once the victim returns or shares the file. No public exploit code is identified in the provided sources. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
CherryTree through 1.7.2 will embed local files chosen by an attacker into a saved note document through a path traversal flaw in XML-based document formats (.ctd, .ctz, .ctx). An attacker supplies a crafted document containing an embedded-file node whose 'filename' attribute is an absolute path or a ~/ path with no inline data; when the victim opens it and then saves, CherryTree reads that path under the victim's account and writes the contents into the document. Impact is confidentiality-only, limited to files the victim can read, and pays off only if the saved document later returns to the attacker. No confirmed actively exploited status (not in CISA KEV) and no verified working exploit code is referenced at time of analysis - the linked GitHub issue is a public defect report - and the moderate 5.6 CVSS:4.0 score aligns with the assessed CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N rating.
RemediationAI
No vendor-released patch is identified at time of analysis: the only upstream artifact referenced is the public issue https://github.com/giuspen/cherrytree/issues/2944 and its linked source files in v1.7.2, and neither EUVD nor VulnCheck lists a fixed release, so administrators should track that issue for the version that corrects CtStorageXmlHelper::_create_image_from_xml before relying on an upgrade. Because the file read occurs at save time rather than at open time, the most effective compensating control follows directly from the mechanism: treat every .ctd, .ctz and .ctx document from an untrusted source as unsafe to save - open such documents only in a disposable session, and if the content must be retained, do not re-save the original document; instead copy text out into a new, locally created note, accepting that this manual step is error-prone for large notes and loses embedded assets. Returning a saved untrusted document to its sender is what completes the disclosure, so avoid round-tripping untrusted documents. Additionally, run CherryTree as a low-privilege account whose readable files do not include SSH private keys, cloud credentials or password stores, and tighten permissions on sensitive files (for example, keep ~/.ssh/id_rsa at mode 600 owned by a different account than the one used for untrusted documents); this reduces the value of a successful embed but does not stop the traversal itself, and restricting permissions too broadly can break legitimate tooling that expects to read those files. The vendor advisory and upstream issue should be monitored for the exact fixed version before declaring the environment clean.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CherryTree stores rich-text notes in several formats, three of which are XML-based: .ctd, .ctz and .ctx. In that XML representation, image and other binary content can either be carried inline or referenced by a 'filename' attribute. CtStorageXmlHelper::_create_image_from_xml (src/ct/ct_storage_xml.cc, roughly lines 648-692 in v1.7.2) parses that attribute and accepts it without validating that the referenced path stays within a legitimate document or asset directory, and ct_image.cc (lines 757-767) handles reading the file from disk whenever no inline data is present. That is CWE-36 (Absolute Path Traversal): an absolute path such as /etc/passwd, or a tilde-expanded path such as ~/.ssh/id_rsa, is honoured as-is. The consequence is unusual for a traversal bug - the file is not overwritten but ingested: the read happens at document save time, so the attacker-controlled path is resolved against the victim's own filesystem and the file content is embedded into the attacker's document. The CPE cpe:2.3:a:giuspen:cherrytree:*:*:*:*:*:*:*:* and EUVD range 'cherrytree 0 ≤ 1.7.2' both describe an unbounded affected range up to and including 1.7.2, i.e. every release before whatever fix may ship. Because the path resolution uses the victim's privileges, scope is unchanged (S:U) and integrity and availability are unaffected (VI:N/VA:N); the trigger requires the victim to open the document and then actively save it (UI:A) and requires the attacker to specify or guess the target path plus a later round trip to retrieve the saved document (AT:P). The vector is local (AV:L) with no network or default-configuration remote path described in the available sources.
Know when Cherrytree gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:A/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Local document-based attack requiring the victim to open and save a crafted file (AV:L, UI:R); crafting needs no authentication (PR:N); arbitrary readable files are disclosed (C:H) with no integrity or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
CherryTree through 1.7.2 contains a path traversal vulnerability in CtStorageXmlHelper::_create_image_from_xml that trusts unvalidated embedded-file 'filename' attributes in XML documents. Attackers can craft a .ctd, .ctz, or .ctx document with an absolute or ~/ filename and no data, so saving embeds files like ~/.ssh/id_rsa into the document.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
More in Cherrytree
View allOS command injection in CherryTree through 1.7.2 lets an attacker run arbitrary commands with the victim's privileges wh
A cross-site scripting (XSS) vulnerability in CherryTree v0.99.30 allows attackers to execute arbitrary web scripts or H
EUVD-2026-112494
GHSA-237p-f2v6-hfc2
NVD
CVE.org
Exploit-DB