Skip to main content

wger CVE-2026-86256

| EUVDEUVD-2026-72112 MEDIUM
URL Redirection to Untrusted Site (Open Redirect) (CWE-601)
2026-09-06 VulnCheck GHSA-rc6j-63fm-mhq4
5.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Recon
    Trainer authenticates to wger with gym_trainer credentials
  2. Delivery
    Attacker crafts trainer-login URL with external next= parameter
  3. Exploit
    Trainer clicks delivered link
  4. Install
    wger sets trainer.identity session key
  5. C2
    Unvalidated HttpResponseRedirect issues 302 to attacker domain
  6. Execute
    Trainer's browser follows redirect leaking user_pk via Referer
  7. Impact
    Attacker presents phishing page to harvest credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Redirect URL validation
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

The victim must hold an active, authenticated wger session with the gym.gym_trainer permission - anonymous or regular non-trainer users cannot reach the impersonation code path. The trainer must have at least one user under their management so that the trainer.identity branch executes. The attacker must deliver a crafted link to the trainer and the trainer must click it (UI:P); exploitation cannot be triggered server-side without the trainer's interaction. The ?next= parameter must be present in the GET request for the vulnerable branch to be taken; requests without a next parameter fall through to a safe default redirect. Limiting factors include the authentication barrier (trainer account required), the social engineering dependency, and the fact that impact is confined to browser-level redirect and passive information disclosure - there is no server-side execution path.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P, score 5.1) accurately characterises the attack profile: network-reachable with low complexity, but gated behind an authenticated trainer session and a social-engineering step requiring the trainer to interact with a crafted link. The real-world risk is moderate-to-low: there is no direct server-side code execution, no privilege escalation within wger, and the attacker gains only indirect influence over the trainer's browser session. The PoC is publicly documented in the GHSA advisory, raising the likelihood of eventual opportunistic exploitation, but the requirement for a credentialed trainer target limits automation potential significantly. No EPSS data or CISA KEV entry is present in the available input, and no reports of active exploitation have surfaced; even a small gym management deployment should treat this as a routine patch-cycle priority rather than an emergency response, given that the blast radius is confined to phishing and passive user_pk disclosure rather than host compromise.

Exploit ScenarioDerived

An attacker crafts the URL https://wger.target/en/user/2/trainer-login?next=https://evil.example/phish and delivers it to a trainer via email or a messaging platform. When the trainer - already authenticated with a valid session - clicks the link, wger sets the trainer.identity session key and issues an immediate 302 Found redirect to https://evil.example/phish; the trainer's browser follows the redirect, sending the Referer header https://wger.target/en/user/2/trainer-login which discloses the user_pk and instance URL. The attacker's page can then display a convincing wger login mimic to harvest credentials. A confirmed PoC demonstrating this exact flow is included in the GHSA advisory.

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 – Sep 06, 2026

Open redirect in wger's trainer_login view allows an attacker to redirect an authenticated trainer's browser to an arbitrary external domain immediately after impersonation mode is established. The root cause is in wger/core/views/user.py (~line 203), where HttpResponseRedirect(request.GET['next']) is called without invoking Django's url_has_allowed_host_and_scheme() guard, allowing any URL - including off-host ones - to be supplied via the ?next= GET parameter. Beyond phishing, the redirect leaks the wger instance URL structure and the impersonated user's user_pk through the browser's Referer header; a working PoC is confirmed in the GHSA advisory, though no active exploitation has been reported.

RemediationAI

Upgrade to wger 2.6 or later, which fixes the vulnerability by adding a url_has_allowed_host_and_scheme() check in wger/core/views/user.py before issuing the redirect, falling back to reverse('core:index') for any URL that fails validation. See the vendor advisory at https://github.com/wger-project/wger/security/advisories/GHSA-vqv8-j3mj-wjxj for the exact patch diff. For deployments unable to upgrade immediately, a compensating control is to configure a reverse proxy or WAF rule to strip or reject ?next= parameters that contain :// or hostnames other than the wger instance's own domain on the /en/user/*/trainer-login path - this eliminates the cross-origin redirect without disabling same-host redirects. The GHSA advisory also recommends adding @require_POST to the trainer_login view, which moves the next parameter into the POST body where Django's CSRF middleware applies, eliminating the combined CSRF/open-redirect attack surface; note this change requires updating any client-side links that currently use GET requests to the trainer-login endpoint.

Affected VersionsENISA

wger 0 <2.6

Affected Packages

pypi wger fix: 2.6

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

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

Technical ContextAI · show details

wger is an open-source Django-based workout and gym management platform (CPE cpe:2.3:a:wger-project:wger:*:*:*:*:*:*:*:*). Its trainer impersonation feature, exposed at GET /en/user/<user_pk>/trainer-login, allows users holding the gym.gym_trainer permission to assume another user's session context. After setting request.session['trainer.identity'], the view unconditionally passes request.GET['next'] to HttpResponseRedirect() with no host or scheme validation. Django provides url_has_allowed_host_and_scheme() specifically to prevent this class of defect (CWE-601: URL Redirection to Untrusted Site). The omission means any URL - cross-origin or otherwise - can appear in the HTTP Location response header, redirecting the trainer's browser off-site. The secondary information disclosure arises because browsers include the full originating URL in the Referer header when following the redirect, exposing the user_pk path segment and confirming the wger instance's URL structure to the attacker.

Know when Wger 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 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 4.6 MEDIUM

Trainer authentication required (PR:L) and trainer must click the crafted link (UI:R); impact is limited to Referer-based user_pk leakage (C:L) and phishing redirect (I:L) with no availability impact.

3.1 AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/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
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Sep 06, 2026 - 13:01 EUVD

DescriptionCVE.org

wger before 2.6 (affected versions <= 2.5.0) contains an open redirect vulnerability in the trainer_login view (wger/core/views/user.py). After a trainer enters impersonation mode, the view redirects to the user-supplied 'next' GET parameter via HttpResponseRedirect() without validating it with url_has_allowed_host_and_scheme(). An attacker who delivers a crafted link to an authenticated trainer can redirect the trainer's browser to an attacker-controlled domain, enabling phishing and leaking the wger URL structure (including the impersonated user's user_pk) via the Referer header.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Rare
niche open-source gym and fitness management app
Data Quality
6 sources
Confidence: High

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

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

More in Wger

View all
CVE-2022-2650 CRITICAL POC
9.8 Nov 24

Improper Restriction of Excessive Authentication Attempts in GitHub repository wger-project/wger prior to 2.2. Rated cri

CVE-2023-38758 MEDIUM POC
5.4 Aug 08

Cross Site Scripting vulnerability in wger Project wger Workout Manager v.2.2.0a3 allows a remote attacker to gain privi

CVE-2023-38759 HIGH
8.8 Aug 08

Cross Site Request Forgery (CSRF) vulnerability in wger Project wger Workout Manager 2.2.0a3 allows a remote attacker to

CVE-2026-27839 MEDIUM POC
4.3 Feb 26

Wger versions up to 2.4 allow authenticated users to access other users' private nutrition plans through insecure direct

CVE-2026-27835 MEDIUM POC
4.3 Feb 26

Wger versions up to 2.4 expose all users' repetition configuration data to any authenticated attacker due to missing aut

CVE-2026-86255 HIGH
7.1 Sep 06

Uncontrolled resource consumption in wger before 2.5 allows any authenticated user to exhaust server worker threads and

CVE-2026-27838 LOW POC
3.1 Feb 26

wger is a free, open-source workout and fitness manager. Five routine detail action endpoints check a cache before calli

CVE-2026-46434 HIGH
7.1 Oct 07

Account-deactivation privilege escalation in wger before 2.6 lets an authenticated user who holds only the gym_trainer r

CVE-2026-46438 MEDIUM
6.5 Oct 07

Cross-user integrity corruption in wger versions prior to 2.6 allows authenticated attackers to inject arbitrary workout

CVE-2026-86254 MEDIUM
6.1 Sep 06

Incomplete authorization fix in wger through master exposes three user-management views in wger/core/views/user.py to th

CVE-2026-45161 MEDIUM
5.4 Oct 07

wger before 2.6 contains a CSRF bypass (CWE-352) that lets an attacker-controlled web page silently rebind an authentica

CVE-2026-82544 MEDIUM
5.3 Aug 30

Cross-site request forgery in wger's gym password-reset endpoint allows a remote attacker to force an arbitrary member's

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