CVE Catalog

CVE-2026-45161

MediumCVSS 5.4
Published: Updated: Translated: NVD NIST

Summary

In wger prior to version 2.6, the trainer_login view accepts GET requests and executes django_login() without CSRF protection, because Django's CsrfViewMiddleware only enforces tokens on unsafe methods. An attacker can embed an <img> tag on a malicious page; when an authenticated trainer loads it, their browser auto-issues the GET with the session cookie, forcibly rebinding the trainer's session to an arbitrary user account.

Risk Assessment

An attacker can hijack a trainer's session and act as any user account, leading to privilege escalation and unauthorized actions. It only requires the logged-in trainer to visit a malicious page.

Recommendation

Update wger to version 2.6 or later. Additionally, implementing CSRF protection for all state-changing operations is recommended.

Other vulnerabilities in wger

See all
Original NVD description (English source)

wger is a free, open-source workout and fitness manager. Prior to version 2.6, the `trainer_login` view in wger accepts GET requests and executes `django_login()` without any CSRF protection, because Django's `CsrfViewMiddleware` only enforces tokens on unsafe methods (POST/PUT/PATCH/DELETE). An attacker can embed a single `<img>` tag on a malicious page; when an authenticated trainer loads that page, their browser auto-issues the GET with the session cookie, forcibly rebinding the trainer's session to an arbitrary user account. Version 2.6 fixes the issue.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS