CVE-2026-114136: Django REST framework: JSONParser applies an attacker-named codec to the request stream
An unauthenticated attacker can defeat Django’s DATA_UPLOAD_MAX_MEMORY_SIZE limit and force a
worker process to allocate arbitrary memory, by naming a compression codec in the Content-Type
charset parameter. A 108-byte request body produces a 50,331,648-character value inside the view, an
amplification factor of 466,033, and grows process peak RSS by about 97 MiB. No application
configuration is required beyond DRF’s default parser set; the endpoint only has to accept a JSON
body.
References
- github.com/advisories/GHSA-3547-9m27-7rxg
- github.com/encode/django-rest-framework/commit/3c2634599b26a9f789b03045118dbc276117611a
- github.com/encode/django-rest-framework/releases/tag/3.18.2
- github.com/encode/django-rest-framework/security/advisories/GHSA-3547-9m27-7rxg
- nvd.nist.gov/vuln/detail/CVE-2026-114136
Code Behaviors & Features
Detect and mitigate CVE-2026-114136 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →