Skip to main content

Canonical LXD CVE-2026-28384

CRITICAL
OS Command Injection (CWE-78)
2026-03-12 security@ubuntu.com
9.4
CVSS 4.0 · Vendor: ubuntu
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain low-privilege LXD API credential
  2. Exploit
    Send image/backup POST with crafted compression_algorithm
  3. Execution
    Injected command runs as LXD daemon (root)
  4. Impact
    Achieve host command execution and full server compromise

Vulnerability Assessment

Weakness
CWE
MITRE ATT&CK

2 techniques across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires authenticated access to the LXD REST API with enough trust to call the image-publish or backup-export endpoints (imagesPost, instanceBackupsPost, or storagePoolVolumeTypeCustomBackupsPost) - the CVSS PR:L confirms a valid, unprivileged LXD user is needed, so this is not exploitable by fully anonymous callers. The attacker must supply a malicious compression_algorithm value on one of those requests against LXD 4.12-6.6; deployments on 4.0/stable (4.0.10) or already patched (5.0.6/5.21.4/6.7) are not exploitable. No user interaction and no special non-default configuration is required beyond having API credentials.

Impact

This is a genuine high-priority issue for anyone running multi-tenant or shared LXD: the CVSS 4.0 base of 9.4 (AV:N/AC:L/AT:N/PR:L/UI:N with high confidentiality/integrity/availability impact and scope change) aligns with an authenticated-but-unprivileged user escalating to root-level command execution on the host, so any operator running an LXD deployment where lower-trust users hold API credentials should treat this as urgent and patch promptly. The signals do diverge on likelihood: EPSS is only 0.12% (30th percentile) and there is no KEV listing or public exploit, which tempers the raw score - exploitation requires valid LXD API access, so this is a privilege-escalation/lateral-movement risk rather than an internet-wide worm target. The gap between the near-critical CVSS and the low EPSS reflects the PR:L prerequisite and absence of published exploit code, not a defect in the finding itself.

Exploit ScenarioDerived

An attacker holding a low-privilege LXD API certificate issues a POST to publish an image or export a backup, setting compression_algorithm to a crafted value that appends shell commands instead of a real compressor name; LXD executes it as the daemon (root), granting host command execution and pivot to full server compromise. No public exploit is identified at time of analysis, but the network attack vector and low complexity (AC:L) make weaponization straightforward once API access is obtained.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – Sep 11, 2026

Remote code execution in Canonical LXD 4.12 through 6.6 lets an authenticated but unprivileged LXD API user run arbitrary commands as the root-level LXD daemon by injecting shell content into the compression_algorithm parameter of the image-publish and backup-export endpoints. The daemon passed this attacker-supplied string to a compression command lookup without allowlisting it, turning a routine 'choose your compressor' option into full host takeover. No public exploit is identified at time of analysis and EPSS is low (0.12%), but the root cause is confirmed by Canonical's own security advisory and upstream commits.

Earlier versions of this analysis (1)
v1 Mar 12, 2026 - 19:57

unprivileged user to execute commands as the LXD daemon on the LXD server via API calls to the image and backup endpoints. This issue affected LXD from 4.12 versions up to 6.6 is affected by os command injection.

RemediationAI

Upgrade to a patched snap: 5.0.6-e49d9f4 (5.0/stable), 5.21.4-1374f39 (5.21/stable), or 6.7-1f11451 (6.0/stable) - snap refresh will pull the fixed build for your channel; deployments already on 4.0/stable (4.0.10) are unaffected. If immediate patching is not possible, restrict who holds LXD API/trust credentials and revoke access for lower-trust users, since exploitation requires authenticated API access to the image and backup endpoints; because the vulnerable parameter is a legitimate API option there is no safe feature toggle short of blocking untrusted callers, and tightening trust removes convenience for those users. Reference Canonical's advisory GHSA-4rmf-rcp8-2r9g and the fix commits (043696a13171ace7dd4c2b32d34ce039ab629052, 7046979645c2ce1b63b2f9e60ddf6cbc4c4b78f9, b7b411caf5c4971bfe2386c72128f44d7e2aaf4f).

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

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 container and virtual-machine manager exposed over a REST API (cpe:2.3:a:canonical:lxd). When creating an image (imagesPost) or exporting an instance/volume backup (instanceBackupsPost, storagePoolVolumeTypeCustomBackupsPost), the client may specify a compression_algorithm; LXD's compressFile helper split this string and used field[0] as an executable to look up and run. Because the value was never validated (CWE-78, OS Command Injection), an attacker could smuggle additional command tokens instead of a legitimate compressor name. The fix (commit 043696a…) introduces validate.IsCompressionAlgorithm with a strict allowlist - bzip2, gzip, lzma, pigz, pzstd, squashfs, xz, zstd - rejecting anything else before exec.LookPath is called, and a regression test confirms 'lxc publish --compression=ls' is now rejected.

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

Vendor (ubuntu) PRIMARY 9.4 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
vuln.today AI 9.9 CRITICAL

Network-reachable API, low complexity, requires a low-privilege authenticated LXD user (PR:L); command execution as the root daemon escapes the user's authorization context (S:C) with full C/I/A impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
SUSE CRITICAL

Primary rating from Vendor (ubuntu).

CVSS VectorVendor: ubuntu

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
High
Subsequent system: Integrity
High
Subsequent system: Availability
High

Lifecycle Timeline

3
Analysis Updated
Sep 11, 2026 - 15:44 vuln.today
v2 - CVSS changed
CVSS changed
Sep 11, 2026 - 15:37 NVD
9.4 (CRITICAL)
CVE Published
Mar 12, 2026 - 15:16 nvd
N/A

DescriptionCVE.org

An improper sanitization of the compression_algorithm parameter in Canonical LXD allows an authenticated, unprivileged user to execute commands as the LXD daemon on the LXD server via API calls to the image and backup endpoints. This issue affected LXD from 4.12 through 6.6 and was fixed in the snap versions 5.0.6-e49d9f4 (channel 5.0/stable), 5.21.4-1374f39 (channel 5.21/stable), and 6.7-1f11451 (channel 6.0 stable). The channel 4.0/stable is not affected as it contains version 4.0.10.

Executive ViewAI

Why It Matters

Canonical LXD versions 4.12 through 6.6 contain a critical remote code execution vulnerability enabling unprivileged API users to execute commands with root-level LXD daemon privileges. Organizations operating affected versions with non-administrative API access face complete compromise of container infrastructure and underlying host systems. Without a vendor-released patch, immediate implementation of strict access controls and network isolation is mandatory.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Implement the following interim controls: restrict LXD API access exclusively to privileged administrative accounts; isolate LXD infrastructure via network segmentation to prevent lateral movement; enable detailed logging and alerting on all API calls and daemon commands; deploy endpoint detection and response (EDR) tooling to detect anomalous root process execution; disable remote API access on systems where local-only management is operationally feasible; and assign personnel to monitor Canonical's security channels weekly for patch availability notices.

Threat Intelligence Overview

EPSS Score
0.1%
Top 70% exploitable
Prevalence
Medium
widely used container/VM manager on Ubuntu servers but not universal
Data Quality
5 sources
Confidence: Medium
NVD CVE.org EPSS Vendor GitHub VulDB

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.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
Very High

Priority Score

47
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +47
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

Affected Products (CPE)CVE.org

cpe:2.3:a:canonical:lxd:*:*:*:*:*:*:*:*
cpe:2.3:a:canonical:lxd:*:*:*:*:*:*:*:*
cpe:2.3:a:canonical:lxd:*:*:*:*:*:*:*:*
cpe:2.3:a:canonical:lxd:*:*:*:*:*:*:*:*

More in Lxd

View all
CVE-2025-54286 HIGH POC
7.5 Oct 02

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

CVE-2025-54289 HIGH POC
7.4 Oct 02

Privilege escalation in Canonical LXD's operations API (LXD before 6.5 and LXD 5.21 before 5.21.4) allows an authenticat

CVE-2025-54293 HIGH POC
7.1 Oct 02

Authenticated remote attackers with access to the Canonical LXD instance log retrieval or deletion endpoints can read ar

CVE-2025-54287 HIGH POC
7.1 Oct 02

Server-side template injection in Canonical LXD's instance snapshot naming feature lets an authenticated user who can mo

CVE-2025-54290 MEDIUM POC
6.9 Oct 02

Unauthenticated project enumeration in Canonical LXD 5.21.x before 5.21.4 and 6.x before 6.5 lets remote attackers deter

CVE-2025-54291 MEDIUM POC
6.9 Oct 02

Unauthenticated remote attackers can confirm the existence of LXD projects on Canonical LXD by comparing HTTP status cod

CVE-2026-63294 CRITICAL
9.9 Aug 12

Privilege escalation to host root in Canonical LXD occurs when the container manager unpacks crafted image or backup arc

CVE-2026-66897 CRITICAL
9.9 Aug 24

Host root code execution in Canonical LXD arises from a path-traversal flaw in instance template processing, letting an

CVE-2026-112816 CRITICAL
10.0 Oct 30

Improper certificate validation in the HTTPS API listener of Canonical LXD lets an unauthenticated remote attacker prese

CVE-2026-63293 CRITICAL
9.9 Aug 12

Arbitrary host file read and write in Canonical LXD occurs because the image import/unpack routine does not verify wheth

CVE-2026-63298 CRITICAL
9.9 Aug 12

Canonical LXD's NVIDIA GPU passthrough configuration handler fails to sanitize newline characters in user-supplied `nvid

CVE-2026-66898 CRITICAL
9.9 Aug 12

Path traversal in Canonical's LXD container and VM manager allows a user with backup import/restore privileges to write

Vendor StatusVendor

SUSE

Severity: Critical

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy