Skip to main content

Jexactyl EUVDEUVD-2026-95983

| CVE-2026-107854 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-09 GitHub_M
5.4
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privileged billing user
  2. Delivery
    Enumerate or guess target server_id
  3. Exploit
    POST crafted server_id to /billing/free/process
  4. Execution
    Server loaded without ownership check
  5. Impact
    Renew/unsuspend victim's server

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

Exploitation requires that billing is enabled on the Jexactyl installation and that the attacker holds a valid authenticated account (PR:L) on that instance. The targeted server must be billable with a renewal_date that is non-null and more than seven days in the future; servers outside this state are not affected. Critically, no subuser or ownership relationship to the victim's server is required - the only knowledge needed is a valid target server_id. Limiting factors: the attack is confined to multi-tenant installations with the free-product billing feature active, the impact is restricted to renewing/unsuspending (no data disclosure or code execution), and all versions 4.0.0 through pre-4.0.5 are affected (fixed in 4.0.5).

Impact

This is a moderate, real-but-bounded authorization flaw (CWE-639, IDOR) rather than a critical priority. The provided CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L = 5.4) is internally consistent with the description: network-reachable, low-complexity, and requiring an authenticated but low-privileged account, with no confidentiality loss and only limited integrity/availability impact (renewing or unsuspending another tenant's server). No EPSS score, KEV listing, or SSVC decision data was supplied, so exploitation-probability and automatability cannot be quantified from the input. A vendor patch commit and GitHub Security Advisory (GHSA-9xwv-p7r5-5h5p) are confirmed present, but no public exploit code is referenced - the commit diff is a fix, not a weaponized PoC. The signals are not conflicting: a genuinely authenticated IDOR with low technical impact and no mass-exploitation indicators points to a targeted, opportunistic issue for multi-tenant Jexactyl operators, not a widespread emergency. Note that the impact is primarily cross-tenant state manipulation (unexpected renewal/unsuspension) rather than data theft or code execution.

Exploit ScenarioDerived

An attacker registers or already holds a low-privileged account on a Jexactyl installation with billing enabled, then sends a POST to /api/client/billing/free/process supplying another tenant's server_id. Because the endpoint loaded the server via Server::findOrFail without scoping to the caller's owned servers, the attacker can renew or unsuspend a victim's billable server (when its renewal_date is non-null and more than seven days out) without any subuser relationship. No public exploit code is referenced, but the fix commit clearly reveals the vulnerable lookup, making reproduction straightforward.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.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 09, 2026

An authorization bypass (IDOR) in Jexactyl 4.0.0 through 4.0.5 allows any authenticated user to renew or unsuspend another tenant's billable game server by submitting an arbitrary server_id to the POST /api/client/billing/free/process endpoint, which loads the server without scoping the lookup to the caller's own account. Exploitation requires billing to be enabled, the target server to be billable with a non-null renewal_date more than seven days in the future, and a valid account on the instance - no ownership or subuser relationship to the victim's server is needed, only knowledge of its server_id. The impact is bounded to unauthorized renewal/unsuspension actions (no data disclosure or code execution) with CVSS 5.4; no public exploit code identified at time of analysis, and the vendor fix is available in version 4.0.5.

RemediationAI

Vendor-released patch: Jexactyl 4.0.5. Upgrade every panel instance running 4.0.0 through 4.0.4 to 4.0.5, which scopes the server lookup in POST /api/client/billing/free/process to the authenticated user via $user->servers()->where('id', ...)->firstOrFail() and returns a 404 for servers belonging to other tenants; see the advisory at https://github.com/Jexactyl/Jexactyl/security/advisories/GHSA-9xwv-p7r5-5h5p, the release at https://github.com/Jexactyl/Jexactyl/releases/tag/v4.0.5, and the upstream fix commit at https://github.com/Jexactyl/Jexactyl/commit/356a5b46a18d483ae90c862e130b1969e6df0777. If upgrading cannot be done immediately, the most effective compensating control is to disable the free-product billing feature so the endpoint is unreachable, at the cost of removing free renewals for legitimate customers; an alternative is to place a reverse-proxy or WAF rule that rejects POSTs to /api/client/billing/free/process for accounts not intended to use it, or to temporarily restrict that route to trusted administrative roles - both carry the trade-off of breaking the free billing workflow and requiring rule maintenance as legitimate traffic patterns change. Because exploitation does not require any subuser relationship, filtering by role or ownership cannot be inferred from request parameters alone, so removing or disabling the feature is preferable to partial input validation. Finally, review billing and audit logs for anomalous renewal or unsuspension events on servers whose owning account was not the actor, and where a manual fix was applied instead of the upstream patch, verify that the ownership-scoped query is present rather than relying on a client-supplied server_id check.

Affected VersionsENISA

Jexactyl 4.0.0, < 4.0.5

Affected Packages

euvd jexactyl_4_0_0 fix: 4.0.5

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

Jexactyl is a Laravel-based game server management panel and billing system built on the Pterodactyl codebase. The vulnerable controller, app/Http/Controllers/Api/Client/Billing/FreeProductController.php, resolved the target server with a globally scoped Eloquent lookup - Server::findOrFail($request->input('server_id')) - which performs no ownership check and therefore trusts a client-controlled primary key. This is the classic CWE-639 pattern (Authorization Bypass Through User-Controlled Key), a subset of IDOR: the object reference is attacker-supplied and the authorization decision is effectively delegated to the request body rather than to the session identity. The upstream commit 356a5b46a18d483ae90c862e130b1969e6df0777 corrects this by scoping the query through the relationship, $user->servers()->where('id', $request->input('server_id'))->firstOrFail(), so that a server belonging to another tenant resolves to a 404 instead of being mutated. The endpoint sits behind the panel's client API middleware, so a valid authenticated session is required (PR:L in the CVSS vector), and the abuse path is a state-changing free-billing workflow (renew/unsuspend), which explains the limited Integrity and Availability ratings with no Confidentiality impact.

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 (GitHub_M) PRIMARY 5.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
vuln.today AI 5.4 MEDIUM

Authenticated low-privileged user (PR:L) sends a network request (AV:N/AC:L) to alter another tenant's server state; integrity and availability limited (I:L/A:L), no data read (C:N).

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 (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

1
Patch available
Oct 09, 2026 - 22:17 EUVD

DescriptionCVE.org

Jexactyl is a customisable game management panel and billing system. From 4.0.0 until 4.0.5, the POST /api/client/billing/free/process endpoint accepts a client-controlled server_id and loads the server without restricting the lookup to servers owned by the authenticated account. On installations with billing enabled, an authenticated user can renew or unsuspend another tenant's billable server when its renewal_date is non-null and more than seven days away, even without a subuser relationship to that server. This issue is fixed in version 4.0.5.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Low
niche self-hosted game-server/billing panel, limited enterprise footprint
Social Media
1
Sightings
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.2%
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· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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