ghsa-56mx-8g9f-5crf
Vulnerability from github
Impact
This affects any Incus user in an environment where an unprivileged user may have root access to a container with an attached custom storage volume that has the security.shifted property set to true as well as access to the host as an unprivileged user.
The most common case for this would be systems using incus-user with the less privileged incus group to provide unprivileged users with an isolated restricted access to Incus. Such users may be able to create a custom storage volume with the necessary property (depending on kernel and filesystem support) and can then write a setuid binary from within the container which can be executed as an unpriivleged user on the host to gain root privileges.
Patches
A patch for this issue is available here: https://github.com/lxc/incus/pull/2642
The first commit changes the permissions for any new storage pool, the second commit applies it on startup to all existing storage pools.
Workarounds
Permissions can be manually restricted until a patched version of Incus is deployed.
This is done with:
chmod 0700 /var/lib/incus/storage-pools/*/*
chmod 0711 /var/lib/incus/storage-pools/*/buckets*
chmod 0711 /var/lib/incus/storage-pools/*/container*
Those are the same permissions which will be applied by the patched Incus for both new and existing storage pools.
References
This was reported publicly on Github: https://github.com/lxc/incus/issues/2641
{
"affected": [
{
"package": {
"ecosystem": "Go",
"name": "github.com/lxc/incus/v6"
},
"ranges": [
{
"events": [
{
"introduced": "6.1.0"
},
{
"last_affected": "6.18.0"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Go",
"name": "github.com/lxc/incus/v6"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "6.0.6"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Go",
"name": "github.com/lxc/incus"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "0.7.0"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-64507"
],
"database_specific": {
"cwe_ids": [
"CWE-269"
],
"github_reviewed": true,
"github_reviewed_at": "2025-11-13T16:04:55Z",
"nvd_published_at": "2025-11-10T22:15:39Z",
"severity": "HIGH"
},
"details": "### Impact\nThis affects any Incus user in an environment where an unprivileged user may have root access to a container with an attached custom storage volume that has the `security.shifted` property set to `true` as well as access to the host as an unprivileged user.\n\nThe most common case for this would be systems using `incus-user` with the less privileged `incus` group to provide unprivileged users with an isolated restricted access to Incus. Such users may be able to create a custom storage volume with the necessary property (depending on kernel and filesystem support) and can then write a setuid binary from within the container which can be executed as an unpriivleged user on the host to gain root privileges.\n\n### Patches\nA patch for this issue is available here: https://github.com/lxc/incus/pull/2642\n\nThe first commit changes the permissions for any new storage pool, the second commit applies it on startup to all existing storage pools.\n\n### Workarounds\nPermissions can be manually restricted until a patched version of Incus is deployed.\n\nThis is done with:\n\n```\nchmod 0700 /var/lib/incus/storage-pools/*/*\nchmod 0711 /var/lib/incus/storage-pools/*/buckets*\nchmod 0711 /var/lib/incus/storage-pools/*/container*\n```\n\nThose are the same permissions which will be applied by the patched Incus for both new and existing storage pools.\n\n### References\nThis was reported publicly on Github: https://github.com/lxc/incus/issues/2641",
"id": "GHSA-56mx-8g9f-5crf",
"modified": "2025-11-13T16:04:55Z",
"published": "2025-11-13T16:04:55Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/lxc/incus/security/advisories/GHSA-56mx-8g9f-5crf"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-64507"
},
{
"type": "WEB",
"url": "https://github.com/lxc/incus/issues/2641"
},
{
"type": "WEB",
"url": "https://github.com/lxc/incus/pull/2642"
},
{
"type": "PACKAGE",
"url": "https://github.com/lxc/incus"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "Incus vulnerable to local privilege escalation through custom storage volumes"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.