Skip to main content

LXD EUVDEUVD-2026-39789

| CVE-2026-9639 MEDIUM
NULL Pointer Dereference (CWE-476)
2026-06-26 canonical
6.5
CVSS 3.1 · Vendor: canonical
View

Attack ChainAIDerived

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

  1. Access
    Obtain LXD account with can_create_storage_volumes
  2. Delivery
    Craft backup tarball omitting snapshot expires_at field
  3. Exploit
    Submit tarball to LXD REST API restore endpoint
  4. Execution
    Trigger nil-pointer dereference in CreateCustomVolumeFromBackup
  5. Persist
    LXD daemon crashes
  6. Impact
    Denial of service disrupts all hosted containers

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

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 user account that has been explicitly granted the can_create_storage_volumes permission within LXD's authorization model. The attacker must be able to reach the LXD REST API over the network (AV:N per CVSS) and submit a backup tarball for custom volume restoration. The backup tarball must contain at least one snapshot entry where the expires_at field is absent. In standard single-operator LXD deployments this permission is held only by administrators, which substantially limits the realistic attacker population. The vulnerability cannot be triggered without this specific permission; unauthenticated users and authenticated users lacking can_create_storage_volumes are not exposed.

Impact

The CVSS 3.1 vector AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H reflects a network-reachable, low-complexity attack requiring only low-privilege authenticated access, with high availability impact and no confidentiality or integrity exposure. The PR:L requirement is the primary limiter: exploitation depends on holding the can_create_storage_volumes permission, which is not granted to arbitrary authenticated users by default in standard LXD deployments. Impact is a full daemon crash, disrupting all hosted containers - a meaningful blast radius in multi-tenant or production LXD hosts. No EPSS data was provided, and no KEV listing exists, indicating this has not been observed in widespread exploitation. The combination of authenticated prerequisite, no data exfiltration, and no public POC positions this as a moderate-priority internal threat - significant for environments where multiple tenants share can_create_storage_volumes access, lower priority for single-operator deployments.

Exploit ScenarioDerived

An authenticated LXD user holding the can_create_storage_volumes permission constructs a backup tarball containing a snapshot entry with the expires_at field omitted. The user submits this tarball to the LXD REST API endpoint for custom volume restoration, triggering the nil-pointer dereference in CreateCustomVolumeFromBackup. The LXD daemon crashes immediately, causing a denial of service that interrupts all containers and VMs running on the affected host until the daemon is restarted. No public POC exists at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jun 26, 2026

Nil-pointer dereference in LXD's CreateCustomVolumeFromBackup function allows an authenticated user with can_create_storage_volumes permissions to crash the LXD daemon via a crafted backup tarball, affecting all containers running on the host. Versions up to 6.8 (current branch) and 5.21 (LTS branch) on Linux are vulnerable. No public exploit or CISA KEV listing exists at time of analysis, but upstream fix commits are available from Canonical.

RemediationAI

Upstream fix commits are available in Canonical's GitHub repository via pull requests #18320 (https://github.com/canonical/lxd/pull/18320) and #18390 (https://github.com/canonical/lxd/pull/18390). Exact patched release versions are not independently confirmed from available data - monitor the vendor advisory at https://github.com/canonical/lxd/security/advisories/GHSA-j93m-3j9p-m5m8 for official release tags and apply the update as soon as a patched version is published. As a compensating control prior to patching, restrict the can_create_storage_volumes permission to only fully trusted administrators using LXD's fine-grained authorization system; note this prevents all non-admin users from creating volumes from backups, which may impact legitimate workflows. Additionally, restrict LXD API network exposure to trusted network segments where feasible.

Affected VersionsENISA

LXD 6.0 <6.9
LXD 5.21.0 <5.21.5

Affected Packages

euvd lxd fix: 5.21.5, 6.9

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 open-source Linux container and virtual machine hypervisor, primarily deployed on Ubuntu. The flaw resides in lxd/storage/backend_lxd.go within the CreateCustomVolumeFromBackup function. During custom volume restoration from a backup tarball, the code iterates over snapshot entries and unconditionally dereferences the ExpiresAt pointer field (*snapshot.ExpiresAt) when calling VolumeDBCreate. If a crafted tarball omits the expires_at field for any snapshot, the pointer is nil and dereferencing it triggers a fatal nil-pointer dereference (CWE-476), crashing the LXD daemon process. The patch (PR #18320) introduces an explicit nil guard: if snapshot.ExpiresAt != nil, the value is used; otherwise a zero-value time.Time is passed. CPE cpe:2.3:a:canonical:lxd:*:*:*:*:*:*:*:* covers the affected product across all listed versions.

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 (canonical) PRIMARY 6.5 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 6.5 MEDIUM

Network-accessible LXD API, low complexity; PR:L because can_create_storage_volumes is required; crash yields A:H with no data exposure.

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

Primary rating from Vendor (canonical).

CVSS VectorVendor: canonical

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

DescriptionCVE.org

Nil-pointer dereference in CreateCustomVolumeFromBackup in LXD up to version 6.8 and 5.21 on Linux allows an authenticated user with can_create_storage_volumes permissions to cause a denial of service via a specially crafted custom-volume backup tarball that omits the expires_at snapshot field.

Threat Intelligence Overview

EPSS Score
0.4%
Top 71% exploitable
Prevalence
Medium
widely used in Ubuntu-based and Canonical cloud environments
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment 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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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

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