High

Wagtail regular expression denial-of-service via search query parsing

  • Disclosed: 11.07.2024
  • Updated: 11.10.2026 12:19

Impact

A bug in Wagtail's parse_query_string would result in it taking a long time to process suitably crafted inputs. When used to parse sufficiently long strings of characters without a space, parse_query_string would take an unexpectedly large amount of time to process, resulting in a denial of service.

In an initial Wagtail installation, the vulnerability can be exploited by any Wagtail admin user. It cannot be exploited by end users. If your Wagtail site has a custom search implementation which uses parse_query_string, it may be exploitable by other users (e.g. unauthenticated users).

Patches

Patched versions have been released as Wagtail 5.2.6, 6.0.6 and 6.1.3.

This vulnerability affects all unpatched versions from Wagtail 2.0 onwards.

Workarounds

Site owners who are unable to upgrade to a patched version can limit the length of search terms passed to parse_query_string. Whilst the performance characteristics will depend on your hosting environment, 1000 characters has been shown to still be fairly fast, without triggering this vulnerability.

No workaround is available for the Wagtail admin usage.

Acknowledgements

Many thanks to Jake Howard for reporting this issue.

For more information

If you have any questions or comments about this advisory:

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Python (PyPI) wagtail >= 6.0, < 6.0.6, >= 6.1, < 6.1.3, >= 2.0, < 5.2.6 6.0.6, 6.1.3, 5.2.6

References

CVSS score 6.5/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
CWE-1333
Platform
Python (PyPI)
Package
wagtail
Disclosed
11.07.2024
Updated
11.10.2026 12:19

Sources and licenses

OSV / GitHub Advisory Database - PYSEC-2024-86 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-jmp3-39vp-fwg8 - CC BY 4.0

Vulnerability history: wagtail

All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (30) in the archive
Total entries
30
First → latest
04.2020 08.2026
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • High 5
  • Medium 22
  • Low 3

Disclosures per year

  1. 2020: 3
  2. 2021: 2
  3. 2022: 1
  4. 2023: 3
  5. 2024: 3
  6. 2025: 0
  7. 2026: 18
Severity:
  1. High · 7.3 CVE-2026-54263 >= 7.3, < 7.3.3, >= 7.4, < 7.4.2 7.3.3, 7.4.2
  2. Wagtail regular expression denial-of-service via search query parsing this entry
    High · 6.5 CVE-2024-39317 >= 6.0, < 6.0.6, >= 6.1, < 6.1.3, >= 2.0, < 5.2.6 6.0.6, 6.1.3, 5.2.6
  3. High · 6.4 CVE-2023-28836 >= 1.5, < 4.1.4, >= 4.2, < 4.2.2 4.1.4, 4.2.2
  4. High · 6.1 CVE-2021-29434 < 2.11.7, >= 2.12, < 2.12.4 2.11.7, 2.12.4
  5. High · 5.7 CVE-2020-15118 >= 2.8rc1, < 2.9.3, < 2.7.4 2.9.3, 2.7.4

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.