Vulnerability · Published Apr 3, 2023 · Assigned by GitHub_M
CVE-2023-28837Wagtail vulnerable to denial-of-service via memory exhaustion when uploading large files
Medium 4.9
In plain English
A medium-severity uncontrolled resource consumption in wagtail from wagtail. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 1.1% (higher than 65% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Wagtail is an open source content management system built on Django. Prior to versions 4.1.4 and 4.2.2, a memory exhaustion bug exists in Wagtail's handling of uploaded images and documents. For both images and documents, files are loaded into memory during upload for additional processing. A user with access to upload images or documents through the Wagtail admin interface could upload a file so large that it results in a crash of denial of service. The vulnerability is not exploitable by an ordinary site visitor without access to the Wagtail admin. It can only be exploited by admin users with permission to upload images or documents. Image uploads are restricted to 10MB by default, however this validation only happens on the frontend and on the backend after the vulnerable code. Patched versions have been released as Wagtail 4.1.4 and Wagtail 4.2.2). Site owners who are unable to upgrade to the new versions are encouraged to add extra protections outside of Wagtail to limit the size of uploaded files.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | wagtail | 4.2.2 | GHSA-33pv-vcgh-jfg9 |
| PyPI | wagtail | 4.1.4 | GHSA-33pv-vcgh-jfg9 |
| PyPI | wagtail | 4.1.4, 4.2.2 | PYSEC-2023-56 |
Affected products (as reported)
Weakness: CWE-400, CWE-770 · Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/wagtail/wagtail/security/advisories/GHSA-33pv-vcgh-jfg9 x_refsource_CONFIRM
- https://github.com/wagtail/wagtail/commit/3c0c64642b9e5b8d28b111263c7f4bddad6c3880 x_refsource_MISC
- https://github.com/wagtail/wagtail/commit/c9d2fcd650a88d76ae122646142245e5927a9165 x_refsource_MISC
- https://github.com/wagtail/wagtail/commit/cfa11bbe00dbe7ce8cd4c0bbfe2a898a690df2bf x_refsource_MISC
- https://github.com/wagtail/wagtail/commit/d4022310cbe497993459c3136311467c7ac6329a x_refsource_MISC
- https://docs.wagtail.org/en/stable/reference/settings.html#wagtailimages-max-upload-size x_refsource_MISC
- https://github.com/wagtail/wagtail/releases/tag/v4.1.4 x_refsource_MISC
- https://github.com/wagtail/wagtail/releases/tag/v4.2.2 x_refsource_MISC