Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to LXD API
-
DeliveryCreate privileged instance in unrestricted project
-
ExploitRequest migration to restricted project
-
ExecutionTarget restriction check is skipped
-
PersistPrivileged instance runs in restricted project
-
ImpactBypass tenant isolation controls
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated LXD account (PR:L) that (1) can create an instance in at least one project without the target restrictions and (2) holds can_create_instances / migration rights on the restricted target project. The specific enabling condition is that the target project enforces restrictions (e.g. restricted.containers.lowlevel, restricted.devices.*, restricted.networks.access) that differ from the source project - with no such restricted project there is nothing to bypass. It is triggered specifically through the cross-project instance migration path (instancePostMigration); same-project operations are unaffected. Limiting factors: it is not anonymous (requires valid credentials and instance-creation privileges) and it only matters in multi-tenant / restricted-project deployments, so single-project or single-tenant LXD installs are not meaningfully exposed. |
| Impact | The signals are largely one-directional toward high priority: CVSS 9.9 with AV:N/AC:L/PR:L/UI:N and a scope change (S:C) reflecting that escaping project confinement can affect the host and other tenants. The one meaningful gating factor is PR:L - the attacker must already be an authenticated LXD user with can_create_instances on a restricted project, and must also be able to create the malicious instance in some unrestricted project, so this is primarily an insider or compromised-credential / privilege-escalation scenario rather than anonymous internet exploitation. No EPSS score, no CISA KEV listing, and no public POC are present in the provided data, so real-world exploitation is not evidenced; however, the flaw is logically simple and reliable once the prerequisite access exists, which is why any multi-tenant LXD operator - even a modest, resource-constrained team running shared LXD hosts - should treat patching as urgent. The primary residual uncertainty is the exact fixed release version, which the input does not specify. |
| Exploit ScenarioDerived | An authenticated LXD user who is allowed to create instances in a permissive project builds a low-level/privileged container with disallowed devices or unrestricted network access there. They then issue an instance move (POST migration) targeting a restricted project where such a configuration should be forbidden; because the target project's restrictions are not re-checked, the privileged instance lands inside the restricted project and runs with capabilities the tenant was never supposed to have. No public POC is noted, but the attack requires only ordinary LXD API calls and low complexity. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 12, 2026
Project-confinement bypass in Canonical LXD lets an authenticated user holding can_create_instances on a restricted project escape that project's security policy by migrating an instance into it. Because instancePostMigration never re-validated the incoming instance against the target project's enforced restrictions, an attacker could build a high-privilege or otherwise disallowed instance inside an unrestricted project and relocate it into the restricted one, inheriting capabilities (low-level container access, arbitrary devices, unrestricted network access) that the project was configured to forbid. Rated CVSS 9.9 by the vendor; no public exploit identified at time of analysis and it is not in CISA KEV.
RemediationAI
Upgrade LXD to the patched release that includes the checkTargetProjectRestrictions change from PRs 18651 and 18605; consult the vendor advisory at https://github.com/canonical/lxd/security/advisories/GHSA-5g5r-wh97-qcq2 for the exact fixed version, which is not stated in the available data (Upstream fix available via PR/commit; released patched version not independently confirmed from this input). Until patched, reduce exposure by restricting who holds can_create_instances and instance-migration permissions on restricted projects (trade-off: legitimate tenants lose self-service instance moves), and by not co-locating unrestricted 'staging' projects that the same identities can use to stage privileged instances (trade-off: operational inconvenience for multi-project workflows). Audit existing instances in restricted projects for configurations that violate the intended restricted.containers.lowlevel, restricted.devices.*, and restricted.networks.access policies, since a pre-patch migration could have already smuggled a non-compliant instance in.
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 VM manager. It supports multi-tenant isolation through 'projects', which can carry enforced restrictions such as restricted.containers.lowlevel (blocks privileged/low-level container features), restricted.devices.* (limits which device types may be attached), and restricted.networks.access (limits reachable networks). Instance creation normally passes through limits.AllowInstanceCreation to check these policies, but the instance-migration path in lxd/instance_post.go (instancePostMigration) did not perform the equivalent check when moving an instance across projects. This is a textbook CWE-862 Missing Authorization: an operation (cross-project move) that changes the security context of a resource was permitted without re-authorizing it against the destination policy. The fix (PR 18651, referenced with PR 18605) adds checkTargetProjectRestrictions, which fetches the target project's limits and calls limits.AllowInstanceCreation for the instance and its snapshots before the move is persisted. Affected CPE is cpe:2.3:a:canonical:lxd.
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:L/PR:L/UI:N/S:C/C:H/I:H/A:H
LXD API is network-reachable (AV:N) and the logic flaw is reliably triggered (AC:L); a valid instance-creation privilege is needed (PR:L); escaping project confinement affects the host/other tenants (S:C) with full C/I/A impact.
Primary rating from Vendor (canonical).
CVSS VectorVendor: canonical
DescriptionCVE.org
An improper validation vulnerability in the instancePostMigration function in lxd/instance_post.go of LXD allows an authenticated attacker with can_create_instances permissions on a restricted project to bypass project-level security restrictions. When migrating an instance between projects, LXD fails to validate the instance's configuration against the target project's enforced restrictions (such as restricted.containers.lowlevel, restricted.devices.*, and restricted.networks.access). An attacker can exploit this by creating a disallowed or high-privilege instance in an unrestricted project and subsequently moving it into the restricted project.
Executive ViewAI
Canonical LXD contains a critical project-confinement bypass (CVE-2026-63300, CVSS 9.9) that allows authenticated users with instance-creation permissions to circumvent configured security restrictions by migrating containers across project boundaries. This directly undermines the security isolation that organizations depend on for multi-tenant deployments, enabling privilege escalation and unauthorized resource access within restricted environments. All organizations running LXD with segmented or restricted projects require urgent patching to prevent lateral movement and data exposure.
Apply vendor patch.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
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-57411
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB