Home

Description

In Canonical LXD before 6.8, the backup import path validates project restrictions against backup/index.yaml in the supplied tar archive but creates the instance from backup/container/backup.yaml, a separate file in the same archive that is never checked against project restrictions. An authenticated remote attacker with instance-creation permission in a restricted project can craft a backup archive where backup.yaml carries restricted settings such as security.privileged=true or raw.lxc directives, bypassing all project restriction enforcement and allowing full host compromise.

PUBLISHED Reserved 2026-03-26 | Published 2026-04-09 | Updated 2026-04-09 | Assigner canonical




CRITICAL: 9.1CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H

Problem types

CWE-20 Improper input validation

Product status

Default status
unaffected

4.12.0 (semver) before 5.0.7
affected

5.1.0 (semver) before 5.21.5
affected

6.0.0 (semver) before 6.8.0
affected

Credits

Miha Purg finder

References

github.com/...al/lxd/security/advisories/GHSA-q96j-3fmm-7fv4 exploit

github.com/...al/lxd/security/advisories/GHSA-q96j-3fmm-7fv4 (Importing a crafted backup leads to project restriction bypass) vdb-entry vendor-advisory

github.com/canonical/lxd/pull/17921 (Import: Create backup config from index) patch issue-tracking

cve.org (CVE-2026-34178)

nvd.nist.gov (CVE-2026-34178)

Download JSON