# CVE-2026-46434: wger Trainer privilege escalation in user deactivation

Source: https://junglewise.ai/threats/cve-2026-46434-wger-trainer-privilege-escalation-improper-privilege-management  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-07. Updated: 2026-10-07  
License: CC BY 4.0 with a link back

CVE-2026-46434 · Severity: high · CVSS 7.1 · Published 2026-10-07

wger is a workout management web application that gyms use to manage members, trainers, and administrative staff. A gym trainer can deactivate any manager's account in the same gym through an unprotected action endpoint, locking managers out and allowing the trainer to seize administrative control of the gym.

Technologies: [wger (PyPI)](https://junglewise.ai/threats/technologies/wger), [Wger](https://junglewise.ai/threats/technologies/wger-wger). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi), [Wger](https://junglewise.ai/threats/vendors/wger).

## Quick answers

**Is CVE-2026-46434 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-46434 being exploited in the wild.

**How severe is CVE-2026-46434?** High severity, with a CVSS score of 7.1, published 7 October 2026.

**Which products and versions are affected?** wger (PyPI) <= 2.1, ECOSYSTEM:introduced=0,last_affected=2.1.

**Is there a fix for CVE-2026-46434?** No fixed version is recorded yet. Add a privilege hierarchy check in UserDeactivateView and UserActivateView dispatch() methods to prevent lower-privileged trainers from deactivating or activating higher-privileged managers. Restrict the gym_trainer role assignment to prevent trainers being assigned to accounts that could later be used for privilege escalation. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.

**How is CVE-2026-46434 attacked?** It is attacked over the network, in a web application.

**Am I affected by CVE-2026-46434?** Check whether you run wger (PyPI) or Wger at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix


Add a privilege hierarchy check in UserDeactivateView and UserActivateView dispatch() methods to prevent lower-privileged trainers from deactivating or activating higher-privileged managers. Restrict the gym_trainer role assignment to prevent trainers being assigned to accounts that could later be used for privilege escalation.

## Technical details

The UserDeactivateView checks permission using OR logic, granting access to anyone with any of three permissions (gym_trainer, gym_manage_gym, gym_manage_gyms), then only verifies same-gym membership without checking the target user's privilege level. A trainer (lower privilege) can thus deactivate or activate managers or other trainers (higher privilege) in the same gym. The same flaw exists in UserActivateView.

## Affected products

- wger wger

## Identifiers

- CVE-2026-46434
- GHSA-x249-cx55-2h87
- PYSEC-2026-4316

## Timeline

- 2026-10-07: disclosed

## Related threats

- [wger authorization bypass in workout log entry creation](https://junglewise.ai/threats/cve-2026-46438-wger-cross-user-data-corruption-via-missing-ownership-check-on)
- [wger API credentials remain valid after logout/password change](https://junglewise.ai/threats/cve-2026-46437-wger-api-credentials-remain-valid-after-logout-password-change)
- [wger trainer_login CSRF bypass via GET request](https://junglewise.ai/threats/cve-2026-45161-wger-trainer-login-accepts-get-csrf-bypass-enables-forced-session)
- [wger gym-scope guard bypass allows cross-tenant admin notes leak](https://junglewise.ai/threats/cve-2026-43976-wger-cross-tenant-admin-notes-contracts-leak-via-gym-none-bypass)
- [wger CSV/TSV formula injection in gym member export](https://junglewise.ai/threats/cve-2026-86257-wger-csv-tsv-formula-injection-in-gym-member-export)
