Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain root inside LXD guest VM
-
DeliveryInstall modified lxd-agent
-
ExploitWait for operator recursive file pull
-
ExecutionReturn inconsistent SFTP/Lstat responses
-
PersistRedirect writes via improper link resolution
-
ImpactWrite arbitrary files to host paths
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Symlink resolution safety
|
| Exploitation Conditions | Requires (1) the attacker to already hold root inside a guest virtual machine managed by LXD, so they can replace the lxd-agent binary; (2) the host operator to invoke the recursive file pull feature of the LXD CLI client (e.g. recursive |
| Impact | This is a genuine but constrained integrity issue, not a high-urgency threat. The CVSS 3.1 vector (AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:H/A:N = 5.8 Medium) tells the real story: high attack complexity, low privileges required (root inside the guest is 'low' relative to the host trust boundary), and mandatory operator interaction. Exploitation is a reverse-trust / confused-deputy scenario - a compromised guest attacks the operator who pulls files out of it. There is no CVSS confidentiality or availability impact; the sole impact is integrity (arbitrary file write on the host). No EPSS score, no CISA KEV listing, and no public exploit code are present in the provided data, so this is no public exploit identified at time of analysis. Signals are internally consistent: a vendor-self-reported (Canonical) medium-severity flaw with a coordinated GHSA advisory and patched releases, but nothing indicating widespread or automatable exploitation. Realistic priority is low-to-medium: patch during normal cycles, prioritize hosts where operators routinely run recursive file pulls against untrusted VMs. Note the input tag 'Information Disclosure' contradicts the vector (C:N, I:H) - this is a file-write/integrity flaw, not an info leak. |
| Exploit ScenarioDerived | An attacker who has gained root inside an LXD-managed virtual machine replaces the lxd-agent with a modified version that returns inconsistent SFTP directory listings and Lstat results. When the host operator later runs a recursive file pull (e.g. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 28, 2026
Arbitrary file and directory-tree writes on an LXD client host can be achieved through the recursive file pull feature of the LXD CLI in Canonical LXD 4.0.2 through 6.9 on Linux. An attacker who already holds root inside a guest VM (CVSS PR:L) substitutes a modified lxd-agent that returns inconsistent SFTP directory listings and Lstat results, then waits for the host operator to invoke a recursive pull against that VM (UI:R); the difficulty of forging those inconsistent responses is captured by AC:H, and the write lands on the host with the operator's privileges (S:C, I:H, C:N, A:N). This is CWE-59 improper link resolution, no public exploit code was identified at time of analysis, and vendor patches are available in 4.0.14, 5.0.10, and 5.21.8.
RemediationAI
Upgrade the LXD CLI client on any affected host to a vendor-released patched build - 4.0.14 for the 4.0.x line, 5.0.10 for the 5.0.x line, or 5.21.8 - as documented in the advisory at https://github.com/canonical/lxd/security/advisories/GHSA-mr8v-hx34-hfvf; the fix is client-side, so host workstations and jump boxes that run lxc file pull, not just the VM hosts, must be updated. If immediate upgrading is not possible, treat guest-side root as untrusted: stop running recursive pulls (lxc file pull -r or any recursive equivalent) against VMs whose root account is not fully trusted, since that operator interaction is the trigger and the flaw is not exploitable without it - the trade-off is loss of convenient whole-directory transfers, so bulk data must instead be fetched as individual files or retrieved from inside the guest through a separate trusted channel. Narrowing which host accounts may execute recursive pulls against production or third-party VMs reduces the number of privileged writers an attacker can influence, at the cost of added operator friction, and preferring fully trusted, non-compromised guest images for routine pulls limits exposure without changing LXD behavior.
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
LXD is Canonical's system container and virtual machine manager, where each VM runs an in-guest agent (lxd-agent) that the host-side LXD client communicates with; file transfers between host and guest are handled over an SFTP-style channel, and the CLI's recursive pull walks guest directory listings while separately querying Lstat metadata for each entry. The vulnerability is CWE-59, improper link resolution before file access: because the client trusts the guest-supplied SFTP listing and Lstat results without consistently re-validating them against one another, a malicious agent running as root inside the guest can present a listing and metadata that disagree about what a path actually is (for example, a listing that appears to be a plain directory while Lstat describes a symlink, or vice versa), steering the client's link-resolution logic so it writes attacker-chosen content outside the intended destination on the host. The affected component is the host-side LXD CLI client on Linux, version range 4.0.2 up to 6.9, tracked under CPE cpe:2.3:a:canonical:lxd. The CVSS vector AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:H/A:N confirms the network vector, high attack complexity, low privileges required (here satisfied by in-guest root), required operator interaction, a scope change as the guest-originated input affects the host, and an impact limited to integrity - there is no confidentiality or availability effect. Because the guest-to-host trust boundary is only crossed when the operator actively pulls recursively from an untrusted VM, hosts whose operators never perform such pulls from untrusted guests are not exposed.
Know when Lxd 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
AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:H/A:N
Guest root communicates over the LXD/SFTP channel (AV:N), forging consistent listings is complex (AC:H), attacker needs guest privileges (PR:L), operator must run the pull (UI:R), and the write crosses the VM/host boundary (S:C) with integrity-only impact.
Primary rating from Vendor (canonical).
CVSS VectorVendor: canonical
Lifecycle Timeline
2DescriptionCVE.org
Improper link resolution in the recursive file pull feature of the LXD CLI client in Canonical LXD versions 4.0.2 up to 6.9 (fixed in 4.0.14, 5.0.10 and 5.21.8) on Linux allows an attacker with root access inside a virtual machine to write attacker-controlled files or directory trees to arbitrary paths on the client host, with the operator's privileges. The attacker does this by using a modified lxd-agent that returns inconsistent SFTP directory listings and Lstat results.
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
Cross-site request forgery in the LXD-UI component of Canonical LXD 5.0 before 5.0.5, 5.1 before 5.21.4, and 6.0 before
Privilege escalation in Canonical LXD's operations API (LXD before 6.5 and LXD 5.21 before 5.21.4) allows an authenticat
Authenticated remote attackers with access to the Canonical LXD instance log retrieval or deletion endpoints can read ar
Server-side template injection in Canonical LXD's instance snapshot naming feature lets an authenticated user who can mo
Unauthenticated project enumeration in Canonical LXD 5.21.x before 5.21.4 and 6.x before 6.5 lets remote attackers deter
Unauthenticated remote attackers can confirm the existence of LXD projects on Canonical LXD by comparing HTTP status cod
Privilege escalation to host root in Canonical LXD occurs when the container manager unpacks crafted image or backup arc
Host root code execution in Canonical LXD arises from a path-traversal flaw in instance template processing, letting an
Arbitrary host file read and write in Canonical LXD occurs because the image import/unpack routine does not verify wheth
Canonical LXD's NVIDIA GPU passthrough configuration handler fails to sanitize newline characters in user-supplied `nvid
Path traversal in Canonical's LXD container and VM manager allows a user with backup import/restore privileges to write
Authorization bypass in Canonical LXD (6.0 before 6.10, 5.21.x before 5.21.6, 5.0.x before 5.0.8) lets an authenticated
EUVD-2026-88261
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB