Vulnerability Description
Mojo::JSON versions before 9.47 for Perl allow memory exhaustion via unbounded recursion in the pure-Perl decoder. The pure-Perl decode path (`_decode_value` dispatching to `_decode_array` and `_decode_object`) recurses with no depth limit, so a small deeply nested JSON document can consume excessive memory. This path is the default when Cpanel::JSON::XS is not installed or `MOJO_NO_JSON_XS=1` is set; the Cpanel::JSON::XS fast path is not affected. Any caller that decodes an untrusted JSON body, for example `Mojo::Message::json` reached through `$c->req->json`, can exhaust process memory and cause denial of service.
CVSS Score
MEDIUM
Related Weaknesses (CWE)
References
- https://github.com/mojolicious/mojo/commit/cc38b0554275c4d84f6b8b49bcbbc1bec2068
- https://metacpan.org/release/SRI/Mojolicious-9.47/changes
- http://www.openwall.com/lists/oss-security/2026/07/06/2
FAQ
What is CVE-2026-14803?
CVE-2026-14803 is a vulnerability with a CVSS score of 6.5 (MEDIUM). Mojo::JSON versions before 9.47 for Perl allow memory exhaustion via unbounded recursion in the pure-Perl decoder. The pure-Perl decode path (`_decode_value` dispatching to `_decode_array` and `_deco...
How severe is CVE-2026-14803?
CVE-2026-14803 has been rated MEDIUM with a CVSS base score of 6.5/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-14803?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.