CVE-2026-125105: Wagtail: Identification of documents by SHA1 hash

Published Aug 20, 2026
·
Updated

Impact By passing specific HTTP headers to the document serve URL endpoint, an attacker was able to determine whether a document with a given ID matched a specified SHA1 hash, regardless of any permission restrictions on the document or knowing its filename. This could allow an attacker to determine whether a document with a specific known hash is present in the Wagtail document library.

This vulnerability does not expose the document's contents or any metadata beyond the already known SHA1 hash, and does not expose information about any documents for which the attacker does not know the SHA1 hash.

Patches Patched versions have been released as Wagtail 7.0.9, 7.3.4, 7.4.3 and 8.0rc2.

Workarounds Site owners who are unable to upgrade can strip If-Match and If-None-Match from anonymous requests to /documents/ at the reverse proxy, or use a custom document model without a filehash attribute.

Acknowledgements Many thanks to Anand Himanshu for reporting this issue.

For more information If you have any questions or comments about this advisory:

Visit Wagtail's support channels Email us at security@wagtail.org (view our security policy for more information).

Other sources

Wagtail is an open source content management system built on Django. Prior to 7.0.9, 7.3.4, 7.4.3, and 8.0rc2, Wagtail applies ETag conditional request processing to the document serve endpoint before document permission and filename checks complete. An unauthenticated attacker who knows a document ID and a candidate SHA1 hash can submit If-Match or If-None-Match and distinguish the response, revealing whether that hash is present in the document library. The issue does not expose document contents, filenames, other metadata, or information about hashes the attacker does not already know. This issue is fixed in versions 7.0.9, 7.3.4, 7.4.3, and 8.0rc2.

— MITRE

Affected Software

5 affected componentsFixes available
pypi/wagtail<7.0.9, <7.3.4, <7.4.3, <8.0rc2
pip/wagtail<7.0.9
7.0.9
pip/wagtail>=7.1<7.3.4
7.3.4
pip/wagtail>=7.4<7.4.3
7.4.3
pip/wagtail>=8.0rc1<8.0rc2
8.0rc2

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade pip/wagtail to a version that resolves this vulnerability.

    Fixed in 7.0.9
  2. Upgrade

    Upgrade pip/wagtail to a version that resolves this vulnerability.

    Fixed in 7.3.4
  3. Upgrade

    Upgrade pip/wagtail to a version that resolves this vulnerability.

    Fixed in 7.4.3
  4. Upgrade

    Upgrade pip/wagtail to a version that resolves this vulnerability.

    Fixed in 8.0rc2
  5. Upgrade

    Upgrade Wagtail to a version that resolves this vulnerability.

    Fixed in 7.0.9
  6. Upgrade

    Upgrade Wagtail to a version that resolves this vulnerability.

    Fixed in 7.3.4
  7. Upgrade

    Upgrade Wagtail to a version that resolves this vulnerability.

    Fixed in 7.4.3
  8. Upgrade

    Upgrade Wagtail to a version that resolves this vulnerability.

    Fixed in 8.0rc2
  9. Configuration

    Use a custom document model without a file_hash attribute.

    Wagtail custom document model file_hash attribute = absent
  10. Compensating control

    At the reverse proxy, strip If-Match and If-None-Match headers from anonymous requests to /documents/.

Event History

Aug 20, 2026
Advisory Published
via OSV·06:45 PM
Data Sourced
via OSV·06:45 PM
DescriptionSeverityWeaknessAffected Software
Nov 9, 2026
CVE Published
via MITRE·09:25 PM
Data Sourced
via MITRE·09:25 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

What does an attacker need to exploit this issue?

The attacker must be able to send specific HTTP headers to the document serve URL and must already know both a document ID and the SHA1 hash they want to test. No authentication or user interaction is required, but the attack has high complexity.

2

What information can be disclosed?

An attacker can determine whether a document with a specified ID matches a known SHA1 hash, even when permissions would otherwise restrict access. The issue does not reveal document contents, filenames, other metadata, or information about documents whose SHA1 hashes are not already known.

3

Which releases contain fixes?

Patched releases are Wagtail 7.0.9, 7.3.4, 7.4.3, and 8.0rc2.

4

What can be done if upgrading is not immediately possible?

At the reverse proxy, strip the If-Match and If-None-Match headers from anonymous requests to /documents/. Alternatively, use a custom document model that does not have a file_hash attribute.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203