CVE-2026-48754
Description
Incus is a system container and virtual machine manager. Prior to version 7.1.0, `(*backend).createDependentVolumesFromBackup` in `internal/server/storage/backend.go` contains a cluster of unguarded pointer derefs on every dependent-volume entry's `VolumeSnapshots[i]`, `Volume`, and `Pool` sub-fields. An authenticated user with `can_create_instances` permission on any project can crash the `incusd` daemon by uploading an instance backup tarball whose `dependent_volumes[*]` block contains a nil snapshot pointer (or omits `volume:` / `pool:`). This is a sibling-field variant of the 2026-05-04 batch fix `d768f81c0a1d985f35ae56219519822b080bf5e3` ("Properly check dependent volumes on import"). That commit added `if disk == nil` at the top of the outer loop, but did not guard the four sub-pointer fields the loop body dereferences naked. Version 7.1.0 contains an updated patch.
How to fix
- github.com/lxc/incus/v7/cmd/incusd7.1.0 or later
- github.com/lxc/incus/v77.1.0 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| github.com/lxc/incus/v7/cmd/incusdGo | v < 7.1.0 | 7.1.0 |
| github.com/lxc/incusGo | No range specified | — |
| github.com/lxc/incus/v6Go | No range specified | — |
| github.com/lxc/incus/v7Go | v < 7.1.0 | 7.1.0 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.