Incus: Nil Dereferences on Restore via Malformed YAML
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-476.
Summary
Incus is a system container and virtual machine manager. Prior to version 7.0.0, backup.GetInfo() trusts the inline backup/index.yaml config when present and only falls back to parsing the legacy backup/container/backup.yaml file if result.Config == nil. As a result, an archive can carry a valid inline config that passes the initial import preflight while also carrying a malformed legacy backup/container/backup.yaml file that is reparsed later from the restored file system. ParseConfigYamlFile() accepts YAML documents with no container section, and multiple downstream consumers then dereference. Container without checking for nil. Confirmed examples in the instance restore and import flow include backup.UpdateInstanceConfig() and internalImportFromBackup(). An authenticated user with permission to import instance backups may be able to crash the Incus daemon with a crafted backup archive whose inline backup/index.yaml is valid but whose extracted legacy backup.yaml omits container. The crash occurs in the restore path after archive extraction has begun. This issue has been patched in version 7.0.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| lxc | incus | before 7.0.0 | 7.0.0 | Patch available | CNA |
| — | github.com/lxc/incus/v6/cmd/incusd (Go) | up to 6.23.0 | — | No fix listed | GHSA-x5r6-jr56-89pv |
- incus Vendorlxc Affected before 7.0.0 Fixed in 7.0.0 Patch available CNA
- github.com/lxc/incus/v6/cmd/incusd (Go) Vendor— Affected up to 6.23.0 Fixed in — No fix listed GHSA-x5r6-jr56-89pv
Remediation
- Fix · CNA incus (lxc) Fixed in 7.0.0
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2026-41684
- 2026-10-03 Alias added: GHSA-x5r6-jr56-89pv
References
More lxc Incus vulnerabilities
- TI-2026-19296 Incus container image templating arbitrary host file read and write CVSS 3.1HIGH 8.7
- TI-2026-19295 Incus container environment configuration newline injection CVSS 3.1HIGH 8.7
- TI-2025-39899 Incus vulnerable to local privilege escalation through custom storage volumes CVSS 4.0HIGH 8.6
- TI-2026-29045 Incus out-of-bounds panic in snapshot metadata handling allows denial of service CVSS 4.0HIGH 7.1
- TI-2026-29009 Incus nil-pointer dereference in storage bucket import allows denial of service CVSS 4.0HIGH 7.1
- TI-2026-26122 Incus vulnerable to denial of source through crafted bucket backup file CVSS 3.1MEDIUM 6.5
Sources
- CVE-2026-41684 · CVE Program
- CVE-2026-41684 · NVD
- FIRST EPSS
- GHSA-x5r6-jr56-89pv · GitHub Advisory Database · CC BY 4.0
- CVE-2026-41684 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences