Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain valid environment access token
-
ExploitSend request with X-Arcane-Agent-Token to /api/debug/pprof
-
ExecutionBypass AdminRequired gate via early next()
-
ImpactHarvest Go pprof runtime diagnostics
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
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 | Requires possession of a valid environment-scoped access token presented via the X-Arcane-Agent-Token header; this is NOT an unauthenticated flaw. The vulnerable code path is the environment-token branch of AuthMiddleware.managerAuth, which must be active - production managers are configured with WithEnvironmentAccessTokenResolver, so the path is enabled by default. Exploitation targets routes guarded by WithAdminRequired(), concretely the Go pprof interface at /api/debug/pprof/*. Limiting factors: the attacker must already hold a legitimate environment access token (so risk is scoped to deployments that distribute such tokens to less-trusted operators/agents), only backend versions prior to 2.11.0 are affected, and the gain is read-only diagnostic/profiling disclosure rather than configuration change or code execution. |
| Impact | This is a genuine but modest-severity authorization flaw, best treated as medium-low priority rather than an urgent fire. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, base 4.3) is internally consistent with the source evidence: exploitation is network-reachable and low-complexity, but requires PR:L - the attacker must already hold a valid environment-scoped X-Arcane-Agent-Token, which is a meaningful barrier. The impact is confined to confidentiality (C:L): leakage of Go pprof runtime/diagnostic data, with no integrity impact and only a minor, un-scored availability concern (the advisory notes profiling 'overhead'). No EPSS score, no CISA KEV listing, and no public exploit were provided in the intelligence, so there is no signal of active or widespread exploitation - consistent with a low-profile niche product. The strongest confirmation comes from the GHSA advisory, merged PR #3881, and the fixing commit, which precisely corroborate the root cause (the environment-token branch calling next() before the AdminRequired check). The main caveat: this is a privilege-escalation-within-authenticated-context issue (a scoped token reaching an admin-only surface), not an unauthenticated RCE, so raw exposure is limited to deployments that issue environment access tokens to lower-trust parties. |
| Exploit ScenarioDerived | An actor who holds a valid environment-scoped X-Arcane-Agent-Token (for example, a limited multi-environment operator or a compromised agent credential) sends an HTTP request bearing that token to a route protected by WithAdminRequired(), such as /api/debug/pprof/*. Because managerAuth installs the EnvironmentPermissionSet and calls next() before evaluating AdminRequired, the request is served despite the token lacking global-admin rights, returning Go pprof runtime and diagnostic data intended only for global administrators. No public exploit code was identified, but the fix diff and advisory fully describe the trigger. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 16, 2026
An authorization bypass in Arcane before 2.11.0 lets anyone holding a valid environment-scoped access token reach administrator-only routes by presenting that token in the X-Arcane-Agent-Token header, which skips the WithAdminRequired check. The exposed surface is the manager's Go pprof diagnostic interface under /api/debug/pprof/*, so the practical impact is read-only disclosure of runtime and profiling data plus possible profiling overhead, not code execution or configuration change (CVSS 4.3, CWE-863). Exploitation is authenticated - the attacker must already possess a legitimate environment access token (CVSS PR:L) - and no public exploit code has been identified at time of analysis; the flaw is corrected in Arcane 2.11.0.
RemediationAI
Upgrade to Arcane backend 2.11.0 (release tag backend/v2.11.0, https://github.com/getarcaneapp/arcane/releases/tag/backend/v2.11.0), which contains the vendor patch delivered via pull request #3881 and commit 4fe4c7ed9483dff7d43e3c4bee6a92037ce886b4 - the fix routes both the agent-token and API-key paths through a shared authorizeAndContinueInternal helper so the AdminRequired/IsGlobalAdmin check always executes. If immediate upgrade is not possible, the most targeted compensating control is to deny external access to /api/debug/pprof/* at the reverse proxy or ingress (return 404/403 for that path prefix) - this costs you the ability to collect ad-hoc Go profiles for troubleshooting, but the pprof handler is purely diagnostic and is not needed for normal operation. Second, treat environment access tokens as privileged secrets: audit which agents/operators hold them, rotate any that may have leaked, and avoid issuing them to tenants who should not reach admin-restricted endpoints - this narrows the blast radius but does not fix the underlying ordering bug, so it is a stopgap only. Finally, monitor manager logs/access logs for X-Arcane-Agent-Token requests to /api/debug/pprof/* as a detection signal for attempted abuse. Full details and the maintainer's own write-up are at https://github.com/getarcaneapp/arcane/security/advisories/GHSA-mp22-58ff-6fhr; no vendor patch exists for versions below 2.11.0 because the fix is delivered solely in that release.
Affected VersionsENISA
Affected Packages
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 Docker management web interface whose Go backend (module go/github.com/getarcaneapp/arcane/backend/v2) uses Echo middleware for authentication. In AuthMiddleware.managerAuth, the X-Arcane-Agent-Token branch resolves the token to an environment, installs an environment-scoped PermissionSet via environmentScopedInternal, and then calls next(c) unconditionally - before the middleware's AdminRequired option is evaluated. The normal path resolves permissions and then checks m.options.AdminRequired && !ps.IsGlobalAdmin(); the EnvironmentPermissionSet deliberately contains no global or sudo permissions and reports IsGlobalAdmin() as false, but the early return means that check never runs for agent-token requests. This is a classic CWE-863 incorrect authorization flaw: the authentication decision is made correctly, but the authorization gate is bypassed because of control-flow ordering. Production managers are configured with WithEnvironmentAccessTokenResolver in backend/internal/di/providers.go, so the vulnerable path is enabled by default, and in v2.10.2 the concretely affected admin-only surface is the Go runtime pprof handler mounted at /api/debug/pprof/*. The upstream fix (PR #3881, commit 4fe4c7ed9483dff7d43e3c4bee6a92037ce886b4) refactors the logic into a shared authorizeAndContinueInternal helper that both the agent-token and API-key branches invoke, so the AdminRequired/IsGlobalAdmin check can no longer be short-circuited. The patch also touches the analogous X-API-Key branch, indicating the same ordering hazard existed there as well.
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
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
A valid environment access token is required (PR:L) over the network with low complexity; impact is read-only exposure of pprof diagnostics (C:L) with no integrity change and no scored availability loss.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Arcane is an interface for managing Docker containers, images, networks, and volumes. Prior to 2.11.0, AuthMiddleware.managerAuth accepts X-Arcane-Agent-Token credentials and the environment-token branch calls next before the AdminRequired option is evaluated. An attacker with a valid X-Arcane-Agent-Token can request /api/debug/pprof/* through a route protected by WithAdminRequired because EnvironmentPermissionSet is installed and the request continues without checking IsGlobalAdmin. This exposes administrator-restricted Go pprof runtime and diagnostic information and may impose profiling overhead. This issue is fixed in version 2.11.0.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Arcane Docker management tool before 1.13.0 has command injection in lifecycle labels. Container labels are passed to /b
Server-side request forgery in Arcane Docker management interface versions prior to 1.17.3 allows unauthenticated remote
Arcane Docker management interface prior to 1.13.2 has missing authentication, allowing unauthenticated attackers to man
Delegated 'users:update' permission in Arcane (getarcaneapp/arcane) 2.5.0 and earlier allows an authenticated holder of
Arcane versions prior to 2.5.0 disclose stored container-registry credentials to an attacker-controlled host: an authent
EUVD-2026-103176
GHSA-mp22-58ff-6fhr
NVD
CVE.org
Exploit-DB