Skip to main content

Xen Orchestra EUVDEUVD-2026-105088

| CVE-2026-113610 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-20 VulnCheck GHSA-22x8-669x-gh7m
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privileged XO user
  2. Exploit
    Call user.set with victim's user id
  3. Execution
    Delete preferences.otp or overwrite xsCredentials/sshKeys
  4. Impact
    Disable victim 2FA and hijack account

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Requires a valid authenticated session as any low-privileged Xen Orchestra user on a version before 6.9.0 - this is the sole prerequisite and is confirmed by PR:L in the CVSS vector. No special configuration, feature flag, or non-default deployment mode is needed: the user.set API method simply omitted the ownership check, so exploitation works against default configurations by supplying an arbitrary target user id. Limiting factors: the attacker must already hold credentials for the XO instance (no unauthenticated path), and impact is confined to modifying other users' preference data (TOTP secret, xsCredentials, sshKeys) rather than direct data exfiltration; no user interaction by the victim is required.

Impact

This is a post-authentication authorization bypass (CWE-639) rated CVSS 5.3/medium. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L) is internally consistent with the description: network-reachable, low attack complexity, requires a low-privileged authenticated session (PR:L - so NOT unauthenticated), no user interaction, no confidentiality loss, and limited integrity/availability impact. No EPSS score, KEV listing, or POC indicator was supplied, so there is no public exploit identified at time of analysis and no evidence of active exploitation. The headline numeric score understates practical impact in one respect: the ability to delete another user's preferences.otp TOTP secret effectively disables that victim's 2FA and, combined with overwriting stored xsCredentials/sshKeys, can facilitate downstream account compromise - an integrity consequence the VC:N/VI:L rating treats conservatively. Net assessment: a genuine but second-stage risk requiring a pre-existing foothold, worth prioritizing on multi-user Xen Orchestra instances yet not an internet-wide emergency given the authentication prerequisite and absence of exploitation signals.

Exploit ScenarioDerived

A low-privileged but authenticated Xen Orchestra user invokes the xo-server user.set API, passing an administrator's user id as the target instead of their own. Because the pre-6.9.0 code never checked that the id matched the caller, the attacker deletes the admin's preferences.otp value to strip two-factor authentication, or overwrites the admin's stored xsCredentials and sshKeys. No public exploit code is identified, but the flaw is a trivial API parameter manipulation requiring no special tooling.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 20, 2026

Authenticated low-privileged users of Xen Orchestra before 6.9.0 can modify other accounts' stored preferences - deleting the preferences.otp TOTP secret to silently strip two-factor authentication, corrupting it to lock the victim out, or overwriting stored xsCredentials and sshKeys - because the xo-server user.set API method accepted an arbitrary target user id without verifying ownership. The flaw is a CWE-639 authorization bypass (CVSS 5.3, PR:L, no user interaction) reachable over the network, with integrity and availability impact confined to other users' preference data and no confidentiality impact; no public exploit code has been identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade Xen Orchestra to 6.9.0 or later, which enforces that a non-administrative caller may only modify its own record; if you build from source, the corresponding upstream fix is commit 3dbf8738f1e682b96ade2074dc84bee02a0c2d48 and the advisory is GHSA-mc4m-hc98-rhmv (https://github.com/vatesfr/xen-orchestra/security/advisories/GHSA-mc4m-hc98-rhmv). Because Exploitation requires only any valid low-privileged session, reducing the number of XO accounts and removing stale or unused ones shrinks the attack surface; until patched, restrict network access to the xo-server HTTP/HTTPS API (typically 80/443) to trusted management networks or VPN via firewall or reverse-proxy ACLs, accepting that this also blocks legitimate remote users. Enforce the second factor outside XO - for example TOTP or SSO at a reverse proxy or identity provider in front of the UI - so that deletion of preferences.otp does not actually remove the second factor, though this does not protect API-token or direct API access. Hunt xo-server audit/HTTP logs for user.set calls whose id differs from the authenticated principal, treating such events as attempted exploitation; this is detective only and does not prevent the write. If compromise is suspected, have affected users reset their XO passwords and rotate the xsCredentials and sshKeys values stored in their XO preferences, since the same flaw allows those to be silently overwritten.

Affected VersionsENISA

xen-orchestra 0 <6.9.0

Affected Packages

euvd xen_orchestra fix: 6.9.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

Xen Orchestra is Vates' web management platform for XenServer/XCP-ng pools, split into the Node.js xo-server backend and the xo-web front end. Its API methods are defined in packages/xo-server/src/api/*.mjs, where each method receives a params object and can declare resolve entries; the calling identity is available as this.apiContext.user. The user.set method (packages/xo-server/src/api/user.mjs, around lines 73-93) takes an id parameter and writes fields such as email, firstname, lastname, password, permission and preferences onto the user record it looks up from that id. The only ownership check present was an administrative branch: a non-admin caller fell through and the target user object was modified regardless of whether id matched the caller. CWE-639 (Authorization Bypass Through User-Controlled Key, i.e. IDOR) captures the root cause: a security decision keyed on a client-supplied identifier that is never validated against the requester's own identity. Because the writable surface includes the preferences blob, an attacker with any valid session can delete or corrupt preferences.otp (the TOTP seed used for XO's two-factor authentication, disabling or locking out the victim's login) and can overwrite xsCredentials and sshKeys entries persisted for that user. The upstream fix commit 3dbf8738f1e682b96ade2074dc84bee02a0c2d48 adds } else if (id !== this.apiContext.user.id) { throw invalidParameters('a user can only change its own properties') }, and the same commit also tightened permission resolution on importFromEsxi/importMultipleFromEsxi and switched a permission check to Object.hasOwn; that commit additionally contains unrelated prototype-pollution hardening in @xen-orchestra/vmware-explorer (UNSAFE_KEYS in the vmsd/vmx/SOAP parsers), which is a separate issue from this CVE and should not be conflated with the authorization bypass.

Know when the next one hits your stack

  • 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 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated low-priv user (PR:L) exploits a missing ownership check over the network (AV:N/AC:L/UI:N); modifies but does not read other users' data, giving C:N and limited I:L/A:L.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

Xen Orchestra before 6.9.0 contains an authorization bypass vulnerability in the xo-server user.set API method that allows low-privileged authenticated users to modify other users' preferences by supplying an arbitrary target user id. Attackers can delete the preferences.otp TOTP secret to disable two-factor authentication, corrupt it to block logins, or overwrite stored xsCredentials and sshKeys.

Threat Intelligence Overview

EPSS Score
0.4%
Top 64% exploitable
Prevalence
Medium
popular Xen/XCP-ng virtualization management platform, common but industry-specific
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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
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.

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