CVE-2024-35228 Improper Handling of Insufficient Permissions in Wagtail
Authenticated admin users can modify settings without proper permissions due to a missing check in Wagtail's settings module.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-35228?
CVE-2024-35228 is a medium-severity missing authorization vulnerability in wagtail, published on 30 May 2024. An attacker needs administrator access to exploit it, with no action from the victim.
Official description
Wagtail is an open source content management system built on Django. Due to an improperly applied permission check in the `wagtail.contrib.settings` module, a user with access to the Wagtail admin and knowledge of the URL of the edit view for a settings model can access and update that setting, even when they have not been granted permission over the model. The vulnerability is not exploitable by an ordinary site visitor without access to the Wagtail admin. Patched versions have been released as Wagtail 6.0.5 and 6.1.2. Wagtail releases prior to 6.0 are unaffected. Users are advised to upgrade. Site owners who are unable to upgrade to a patched version can avoid the vulnerability in `ModelViewSet` by registering the model as a snippet instead. No workaround is available for `wagtail.contrib.settings`.
Weakness: CWE-280
Which versions are affected by CVE-2024-35228?
5 open source packages ship an affected version, including wagtail.
| Package | Affected | Fixed in |
|---|---|---|
wagtail PyPI | From 6.0.0 | 6.0.5, 6.1.2 |
wagtail PyPI | From 6.0.0 | 6.0.5 |
wagtail PyPI | From 6.0.0 | 6.0.5 |
wagtail PyPI | From 6.1.0 | 6.1.2 |
wagtail PyPI | From 6.1.0 | 6.1.2 |
How do I fix CVE-2024-35228?
Upgrade wagtail to a fixed version for your release line: 6.0.5 or 6.1.2.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2024-35228 being exploited?
There is no known exploitation of CVE-2024-35228 in the wild and no public exploit code.
Sources
Also known as GHSA-xxfm-vmcf-g33f, PYSEC-2026-2032.