CVE-2026-62941 Overview
CVE-2026-62941 is an authorization bypass vulnerability in Incus, an open-source system container and virtual machine manager. The flaw affects all versions prior to 7.3.0. When a user copies an instance across projects, Incus evaluates the AllowInstanceCreation project restriction check before merging the source instance's configuration into the request. Dangerous configuration keys, including security.privileged, raw.lxc, and raw.apparmor, are merged after the authorization check passes. This ordering flaw allows an authenticated user to smuggle prohibited configuration into a target project. The issue is tracked as CWE-863: Incorrect Authorization and is patched in Incus 7.3.0.
Critical Impact
An authenticated user with cross-project copy permissions can bypass target project restrictions to create privileged containers, escape isolation, and gain host-level code execution.
Affected Products
- Incus system container and virtual machine manager
- All versions prior to 7.3.0
- Deployments using multi-project isolation with restricted configuration policies
Discovery Timeline
- 2026-08-21 - CVE-2026-62941 published to the National Vulnerability Database (NVD)
- 2026-08-21 - Last updated in NVD database
Technical Details for CVE-2026-62941
Vulnerability Analysis
Incus supports project-scoped configuration restrictions that block dangerous keys such as security.privileged, raw.lxc, and raw.apparmor. Administrators rely on these restrictions to enforce multi-tenant isolation. The copy-across-projects workflow breaks this contract. Incus calls AllowInstanceCreation against the target project using only the caller-supplied request body. After the check succeeds, the daemon merges the source instance's stored configuration into the new instance. Prohibited keys inherited from the source project bypass the target project's policy entirely.
Root Cause
The root cause is an ordering defect in the authorization flow. The project restriction check runs against an incomplete configuration snapshot. Configuration merging happens after the decision, violating the check-then-use pattern required for authorization enforcement. This aligns with CWE-863: Incorrect Authorization, where the authorization logic evaluates the wrong state.
Attack Vector
An attacker requires network access to the Incus API and valid credentials with permission to copy instances between projects. The attacker prepares an instance in a source project that contains prohibited configuration, such as security.privileged=true or a raw.lxc override. The attacker then issues a copy request targeting a restricted project. The target project accepts the instance because the pre-merge check sees a clean configuration. Once the copied instance starts, the merged privileged configuration grants the attacker container escape primitives, host filesystem access, and code execution as root on the Incus host. Refer to the GitHub Security Advisory GHSA-mq9x-prm8-3vpw for the maintainer analysis.
Detection Methods for CVE-2026-62941
Indicators of Compromise
- Instances in restricted projects that contain security.privileged, raw.lxc, raw.apparmor, or other keys prohibited by the project's restricted.* policy.
- Audit log entries showing cross-project copy operations (POST /1.0/instances?target-project=) followed by successful starts of privileged workloads.
- Unexpected container processes running with UID 0 mapped to host UID 0, or containers mounting host paths outside the project's allowed set.
Detection Strategies
- Enumerate all instances across every project and compare their expanded configuration against each project's restricted.* keys, flagging any mismatch.
- Correlate incusd API access logs for POST requests to the instances endpoint with a source.project value different from the target project.
- Alert on new containers that set security.privileged=true or define raw.lxc or raw.apparmor after the CVE publication date.
Monitoring Recommendations
- Forward Incus daemon logs and audit events to a centralized SIEM and retain them for post-incident review.
- Monitor host-level telemetry for container escape behaviors such as unexpected mount syscalls, kernel module loads, or writes to /proc/sys from container processes.
- Track Incus version inventory across the fleet and alert when any node reports a version below 7.3.0.
How to Mitigate CVE-2026-62941
Immediate Actions Required
- Upgrade every Incus server to version 7.3.0 or later as soon as the patched build is available for your distribution.
- Audit existing instances in restricted projects for prohibited configuration keys and delete or rebuild any instance that violates policy.
- Revoke or scope down cross-project copy permissions for non-administrative identities until all nodes are patched.
Patch Information
Incus 7.3.0 resolves the vulnerability by evaluating AllowInstanceCreation against the fully merged configuration, ensuring the target project's restricted.* policy applies to inherited keys. Details are published in the Incus GitHub Security Advisory GHSA-mq9x-prm8-3vpw.
Workarounds
- Disable cross-project instance copy for standard users by restricting the can_create_instances and can_manage_projects permissions through Incus role-based access control.
- Prohibit security.privileged, raw.lxc, and raw.apparmor at the source project level as well, so no instance can carry these keys into a copy operation.
- Isolate untrusted tenants on dedicated Incus hosts until the patch is deployed to eliminate the shared-host escape risk.
# Configuration example: enforce restrictions on every project
incus project set default restricted=true
incus project set default restricted.containers.privilege=unprivileged
incus project set default restricted.containers.lowlevel=block
incus project set default restricted.containers.nesting=block
# Verify the current Incus version meets the fixed release
incus version | grep -E 'Server version: 7\.(3|[4-9]|[1-9][0-9])'
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

