Skip to main content

Incus CVE-2026-115373

| EUVDEUVD-2026-108296 HIGH
Missing Authorization (CWE-862)
2026-10-22 disclosure@vulncheck.com GHSA-xv35-979f-75jf
7.0
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Hold restricted project client certificate
  2. Delivery
    Obtain in-flight operation UUID out-of-band
  3. Exploit
    GET /1.0/operations/{uuid} bypasses authorization
  4. Execution
    Read cross-project command line, env secrets, websocket/trust tokens
  5. Impact
    Enrol unrestricted certificate for full server admin

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The attacker must hold a valid Incus TLS client certificate that is project-restricted (PR:L, so they are authenticated but confined to their own project), and the deployment must use Incus's multi-project / restricted-certificate tenancy model. They must know the exact 122-bit crypto/rand UUIDv4 of a specific operation, which Incus does not disclose to a restricted client - the reporter verified that /1.0/operations?project=attacker, ?all-projects=true and ?project=victim all return empty - so the UUID must come from out-of-band leakage (operator shell history, CI logs, a proxy or APM trace capturing the async Location header, 'incus monitor' output pasted into a ticket, a former project membership, or a shared automation account). The targeted operation must be in-flight at the instant of the read because operations are transient; this out-of-band-UUID requirement plus the timing window are the key limiting factors that make exploitation targeted rather than widespread. No victim interaction is needed once the UUID is known. The demonstrated escalation to full server admin additionally requires a trust-enrolment ('incus config trust add') operation to be pending at the moment of the read.

Impact

The vendor-assigned CVSS 4.0 score is 7.0 (HIGH) with vector AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/SC:H, which I concur with. Although the attack vector is network (the Incus REST API over TLS), three signals pull real-world risk below the raw score: AT:P (an attack requirement must be met - a target operation must be in-flight), PR:L (a valid project-restricted client certificate is required), and the reporter-verified fact that the 122-bit random operation UUID cannot be enumerated through any API path and must be obtained out-of-band. There is no CISA KEV listing, so this is NOT confirmed actively exploited; EPSS was not provided in the input, so probabilistic exploitation likelihood cannot be stated. A detailed, reproducible PoC is published inside the GHSA advisory itself. The vuln.today decision label is 'this_week', consistent with a serious but non-emergency authorization flaw: a genuine priority for anyone running multi-tenant Incus with restricted certificates, but not a mass-exploitable, internet-spray issue because of the out-of-band UUID dependency and the transient nature of operations. CWE-862/863 (missing authorization) is confirmed by the vendor. Note the input Tag 'Authentication Bypass' is inaccurate: the attacker is already authenticated (they hold a valid certificate) and the defect is a missing authorization check, i.e. an authorization bypass.

Exploit ScenarioDerived

A tenant whose client certificate is restricted to project 'attacker' obtains the UUID of an in-flight exec operation running in project 'victim' from an out-of-band source (a CI log, operator shell history, or a proxy/APM trace of a Location header), then sends GET /1.0/operations/{uuid}. The handler performs no authorization at all and returns the victim's full command line, its environment variables (where deployment tooling places DB_PASSWORD, API tokens and cloud credentials) and the operation's websocket secrets; a full reproduction sequence is published in the GHSA advisory. If a trust-enrolment operation happens to be pending at read time, the same read discloses the enrolment token, which the reporter demonstrated can enrol a fresh unrestricted certificate and yield full server admin.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 22, 2026

Incus servers that use multi-project tenancy expose in-flight operations across project boundaries because the GET /1.0/operations/{uuid} handler performs no authorization check, letting any authenticated client - including one holding a TLS certificate restricted to a single project - read operations that belong to other projects. The disclosed data includes the full command line, the process environment (where deployment tooling typically stores database passwords, API tokens and cloud credentials), the operation's websocket fd secrets and resource URLs, and, when an 'incus config trust add' operation happens to be pending, the trust-enrolment token itself, which the reporter demonstrated could be exchanged for an unrestricted certificate and full server admin. Exploitation is constrained: the attacker must already hold a project-restricted certificate and must obtain the 122-bit crypto/rand UUIDv4 of a specific in-flight operation out of band, since Incus discloses no enumeration path to a restricted client. The issue carries no CISA KEV entry or reported active exploitation; the upstream advisory includes a step-by-step reproduction sequence, which is the only published proof of concept.

RemediationAI

Vendor-released patches exist per branch: upgrade to Incus 6.0.7 on the 6.0 LTS line, 7.0.2 on the 7.0 line, or 7.5.0 on the 7.1.0-and-later feature line; the upstream module fix is go/github.com/lxc/incus/v7/cmd/incusd at v7.5.0 or later. The fix being adopted upstream is the one operationDelete already performs - resolving op.Project() in operationGet and calling s.Authorizer.CheckPermission against auth.EntitlementCanViewOperations (the same entitlement operationsGet already uses) before rendering, with the cluster-forwarding branch inheriting the check because the remote member re-runs operationGet on the forwarded identity; the reporter also flags that operationWaitGet, registered AllowUntrusted: true and returning the same rendered object, needs the same treatment or the fix is bypassable by waiting rather than getting, a path they did not test against a patch. No workaround is stated in the available sources, and note that the exposure comes from the restricted-certificate tenancy model itself, so operators who cannot upgrade immediately should weigh not issuing project-restricted certificates to tenants who should not read one another's operations, and should keep operation UUIDs out of places a tenant can reach - shell history, CI logs, ticket text, incus monitor output, and proxy or APM traces that capture the async Location header - recognizing that these measures only raise the out-of-band discovery bar and do not close the missing authorization check. Advisory and patch detail: https://github.com/lxc/incus/security/advisories/GHSA-mfwv-x733-9446.

Affected VersionsENISA

incus 6.1.0 <7.0.2
incus 0 <6.0.7
incus 7.1.0 <7.5.0

Affected Packages

euvd incus fix: 6.0.7, 7.0.2, 7.5.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Incus is a Go-based system container and VM manager whose daemon exposes a REST API; each API endpoint is registered with an AccessHandler, and the allowAuthenticated handler is documented in cmd/incusd/daemon.go as permitting any authenticated request only on the condition that the handler itself performs 'further access control within the handler'. In cmd/incusd/operations.go, operationGet resolves the requested ID directly out of the process-global, UUID-keyed operations map and renders it without ever calling op.Project(), op.Permission(), or s.Authorizer.CheckPermission - a CWE-862/CWE-863 missing-authorization flaw rather than a memory-safety or injection bug. The sibling handlers on the same router do enforce authorization: operationDelete resolves the project from the operation and builds an auth object per resource before checking, and operationsGet filters every local and remote operation through a GetPermissionChecker for auth.EntitlementCanViewOperations; operationGet was simply skipped in the 2023-10-25 commit 613f937dc that introduced operations authorization, so the flaw has been present since v0.2.0 rather than being a regression. Because the operations map is global and keyed only by UUID, possession of the identifier fully selects the object, and the exposed rendered body carries the exec command line, the environment map, the websocket fd secrets and the operation's resource URLs. A related concern flagged by the reporter is that operationWaitGet is registered AllowUntrusted: true and returns the same rendered object on completion, so an incomplete fix that only hardens operationGet may be bypassable by waiting on the operation instead of reading it.

Know when Incus gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 7.0 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
vuln.today AI 6.3 MEDIUM

PR:L for the required restricted certificate; AC:H because success depends on an attacker-uncontrolled in-flight operation and an out-of-band 122-bit UUID; S:C and C:H for read-only cross-project secret disclosure, no integrity or availability impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
Red Hat 6.3 MEDIUM

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
High
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 22, 2026 - 20:18 EUVD
CVE Published
Oct 22, 2026 - 19:17 cve.org
HIGH 7.0

DescriptionCVE.org

Incus before 6.0.7, 6.1.0 before 7.0.2, and 7.1.0 before 7.5.0 contains a missing authorization vulnerability in GET /1.0/operations/{uuid} that lets project-restricted clients read operations in other projects. Attackers holding a restricted certificate and a known operation UUID can retrieve command lines, environment secrets, websocket secrets, and trust enrolment tokens.

Technical POC Analysis

CWE-862 Missing Authorization (the advisory also lists CWE-863).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

CVE-2026-115373 exposes sensitive operational data across project boundaries in multi-tenant Incus environments, potentially allowing an authenticated user with a project-restricted certificate to read command lines, environment variables, and even trust tokens from other projects. This could lead to full server compromise if an admin trust token is captured, impacting confidentiality and integrity of the entire container infrastructure.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict project-scoped certificates to only necessary users, avoid storing secrets in environment variables of operations, monitor API access logs for anomalous operation UUID access, and consider disabling multi-project tenancy until a fix is available.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Medium
LXD-fork container/VM manager with moderate Linux server and self-hosted adoption
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

35
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +35
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Incus

View all
CVE-2026-23954 HIGH POC
8.7 Jan 22

Incus is a system container and virtual machine manager. [CVSS 8.7 HIGH]

CVE-2026-23953 HIGH POC
8.7 Jan 22

Incus contains a vulnerability that allows attackers to adding arbitrary lifecycle hooks, ultimately resulting in arbitr

CVE-2026-33945 CRITICAL
9.9 Mar 26

Path traversal in Incus system container manager allows authenticated remote attackers to write arbitrary files as root

CVE-2026-33897 CRITICAL
9.9 Mar 26

Incus system container and virtual machine manager versions prior to 6.23.0 allow authenticated users with instance acce

CVE-2026-115377 CRITICAL
9.4 Oct 22

Arbitrary file write in Incus (before 6.0.7, 6.1.0 before 7.0.2, and 7.1.0 before 7.5.0) allows an authenticated client

CVE-2026-33898 HIGH
8.8 Mar 26

Authentication bypass in Incus webui (versions prior to 6.23.0) permits local or remote attackers to gain unauthorized a

CVE-2026-115376 HIGH
8.3 Oct 22

Project isolation bypass in Incus lets an authenticated client that is confined to one project copy and read custom stor

CVE-2026-115371 HIGH
7.1 Oct 22

Authenticated restricted TLS clients on Incus can retrieve S3 access and secret keys for storage buckets in the default

CVE-2026-33743 MEDIUM
6.5 Mar 26

Denial of service in Incus prior to version 6.23.0 allows authenticated users with storage bucket access to crash the In

CVE-2026-33542 MEDIUM
5.7 Mar 26

Incus versions prior to 6.23.0 fail to validate image fingerprints when downloading from simplestreams servers, enabling

CVE-2026-33711 MEDIUM
4.7 Mar 26

Incus versions prior to 6.23.0 allow local authenticated attackers to manipulate temporary screenshot files via predicta

CVE-2025-64507 HIGH POC
8.6 Nov 10

Incus is a system container and virtual machine manager. Rated high severity (CVSS 8.6), this vulnerability is no authen

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy