Skip to main content

Arcane CVE-2026-96627

| EUVDEUVD-2026-103178 HIGH
Incorrect Privilege Assignment (CWE-266)
2026-10-16 GitHub_M GHSA-pw5q-rjx4-7f7p
8.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Obtain account with delegated users:update permission
  2. Delivery
    Send PUT /users/{adminId} with new password
  3. Exploit
    Overwrite global admin password hash
  4. Execution
    Authenticate as global administrator
  5. Impact
    Full control of Docker management plane

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Privilege assignment review
Exploitation Conditions

Requires an authenticated account that holds the delegated users:update permission - in Arcane this is not held by any built-in non-admin role, so an administrator must first create and assign a custom role (e.g. 'User Manager') containing users:update; this delegation is the key precondition and a realistic limiting factor, since deployments that never delegate users:update are not exploitable. Given that prerequisite, exploitation is remote, needs no user interaction, and requires no additional configuration: the attacker simply issues PUT /users/{adminId} with a password field to overwrite the global administrator's credential (handler backend/api/handlers/users.go:317-323 and user_service.go:174 perform an unconditional Save with no actor-vs-target privilege comparison). Affected in versions <= 2.5.0; fixed in 2.6.0.

Impact

This is a genuine high-priority privilege-escalation flaw (CWE-266) rather than an inflated high-CVSS issue. The input CVSS vector CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H (8.8) is internally consistent with the description and the source-code evidence: exploitation is network-reachable (AV:N), requires no user interaction (UI:N), is technically trivial (AC:L - two authenticated HTTP requests), and needs only low privilege (PR:L - any account holding the delegated users:update permission). The full C:H/I:H/A:H impact is justified because taking over the global administrator yields complete control of a Docker management plane (containers, images, networks, volumes), effectively control of the host. No EPSS score and no KEV status were provided in the input, so widespread-versus-targeted exploitation cannot be judged from the data. A working proof-of-concept is published in the GHSA advisory, so exploit knowledge is public, but public POC availability is NOT the same as confirmed active exploitation - there is no CISA KEV listing here. The one caveat that tempers raw CVSS: PR:L understates a real precondition - the victim administrator must first have delegated a custom role containing users:update to the attacker, which is not a default state; against a deployment that never delegates that permission, the flaw is not reachable.

Exploit ScenarioDerived

An administrator delegates a custom 'User Manager' role carrying the users:update permission to a lower-trust operator, intending it for routine profile management. That operator sends PUT /users/{adminId} with {"password":"attacker123"}, overwriting the global administrator's password hash, then logs in as the admin account and gains full control of the Docker environment. A proof-of-concept with these exact requests is published in the GHSA advisory.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

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

Alert me

AnalysisAIv1 – Oct 16, 2026

Delegated 'users:update' permission in Arcane (getarcaneapp/arcane) 2.5.0 and earlier allows an authenticated holder of that permission to overwrite the global administrator's password via PUT /users/{adminId} and then authenticate as the admin, achieving complete administrator account takeover. The UpdateUser handler (backend/api/handlers/users.go:317-323) and the underlying user service (user_service.go:174) set the target user's PasswordHash from the request body and Save unconditionally, with no comparison of caller privilege against target privilege, even though users:update is deliberately intended to sit below the RequireGlobalAdmin-gated role assignment and role CRUD operations. Exploitation is remote, requires no user interaction, and needs no extra configuration beyond the precondition that an administrator has created a custom role (e.g. 'User Manager') containing users:update and assigned it to the attacker's account; deployments that never delegate that permission are not exposed, and no public exploit was identified at time of analysis (CVSS 8.8, PR:L).

RemediationAI

Upgrade Arcane to version 2.6.0 or later (vendor-released patch: backend/v2.6.0, per https://github.com/getarcaneapp/arcane/releases/tag/backend/v2.6.0); the fix in PR 3426 / commit 21ea962 adds caller-vs-target privilege ordering so a non-admin caller can neither set another user's password nor modify or delete a global administrator, and the service layer re-enforces the check with ErrInsufficientPrivilege. Until the upgrade, audit custom roles and remove users:update from every non-admin role (role CRUD and user role assignment remain RequireGlobalAdmin-gated, so an administrator can safely do this), which closes the attack path at the cost of disabling delegated profile management for other users; additionally rotate the global administrator password and invalidate sessions if any delegation of users:update ever occurred, since a prior takeover cannot be detected from the API response, and restrict network access to the Arcane API to trusted administrators so unauthenticated or untrusted callers cannot reach PUT /users/{adminId} at all. Note that no compensating control short of removing the delegated permission fully mitigates the flaw, because the vulnerable handler performs the password write before any downstream check.

Affected VersionsENISA

Arcane < 2.6.0

Affected Packages

go github.com/getarcaneapp/arcane/backend/v2 fix: 2.6.0
euvd arcane fix: 2.6.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

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

Technical ContextAI · show details

Arcane is a Go-based management interface for Docker containers, images, networks and volumes, exposed through a Huma-based HTTP API with an authz layer (backend/pkg/authz/permissions.go) that distinguishes a global-administrator role from delegated, org-level permissions. The flaw is rooted in CWE-266 (Incorrect Privilege Assignment): the update path loads the target user by ID, assigns PasswordHash straight from the request body, and persists it via a plain tx.Save in userService.UpdateUser with no actor-vs-target privilege ordering check. The only IsGlobalAdmin guard in the service (user_service.go:345) is the last-admin protection inside DeleteUser, not the update path, and role assignment/role CRUD are correctly gated by RequireGlobalAdmin - which is precisely why users:update is documented as a sub-admin, profile-management capability that holders are never supposed to be able to use against an administrator. CPE cpe:2.3:a:getarcaneapp:arcane:*:*:*:*:*:*:*:* maps to the Arcane backend, with the Go module go/github.com/getarcaneapp/arcane/backend/v2 fixed in 2.6.0. The fix introduces the missing ordering: the handler now rejects a non-admin caller that submits a password for a different user and resolves target permissions to block edits/deletes against global admins, and the service re-enforces the same check via ErrInsufficientPrivilege; UpdateMyProfile was adjusted to pass nil permissions for self-service updates.

Know when Arcane 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 (GitHub_M) PRIMARY 8.8 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 8.8 HIGH

Network HTTP API (AV:N), trivial two-request exploit (AC:L), requires a delegated users:update account so PR:L not PR:N, no user interaction, and full admin takeover gives C/I/A:H.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Oct 16, 2026 - 22:03 EUVD
CVE Published
Oct 16, 2026 - 21:13 cve.org
HIGH 8.8

DescriptionCVE.org

Arcane is an interface for managing Docker containers, images, networks, and volumes. Prior to 2.6.0, UpdateUser in backend/api/handlers/users.go sets PasswordHash for any target without comparing caller and target privilege. A holder of delegated users:update permission can submit a password change for the global administrator, replace the administrator password, and authenticate as that account, resulting in complete global administrator account takeover. This issue is fixed in version 2.6.0.

Technical POC Analysis

CWE-266 (Incorrect Privilege Assignment), with the advisory also mapping CWE-269.

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

Arcane 2.5.0 and earlier contains a privilege-escalation flaw in which any account holding the delegated 'users:update' permission can overwrite a global administrator's password and then sign in as that administrator, resulting in complete control of the platform and everything it manages. The flaw only affects organizations that have created custom roles (for example a 'User Manager' role) granting users:update, so leadership should prioritize an immediate review of how administrative privileges have been delegated and to whom. No public exploit is currently identified and no vendor patch is available, making interim access controls the primary near-term defense.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: remove users:update from all delegated custom roles so it is held only by global administrators; restrict API exposure to trusted networks or block PUT /users/{adminId} at a reverse proxy or WAF; monitor and alert on user-record and administrator password changes; rotate administrator credentials and invalidate existing admin sessions; audit custom role assignments for unnecessary privilege delegation.

Threat Intelligence Overview

Prevalence
Low
niche self-hosted Docker management tool, limited enterprise footprint
Threat Intel
1
1 source
Social Media
3
Sightings
Data Quality
4 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 N/A
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

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

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

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