CVE-2023-34611
High · 7.5CVSS
7.5
EPSS
0.7%
Published
Jun 14, 2023
CISA due date
—
Cloudanix analysis
A widely used JSON handling component can be tricked by specially crafted data into crashing, which can take down any service that relies on it.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The parser in mjson accepts JSON objects containing cyclic references, which trigger unbounded recursion or resource exhaustion during deserialization and result in denial of service.
Why it matters to the business
Applications or services that ingest untrusted JSON can be crashed or made unresponsive, causing outages and degraded availability for any system relying on this library.
How an attack unfolds
An attacker crafts a JSON payload that contains circular object references and submits it over the network to any endpoint that uses the vulnerable mjson parser; the library enters infinite recursion, exhausting stack or CPU resources and crashing the process. Public exploit code is available, though no named threat actors have been observed using it.
How to fix it
Replace mjson with a maintained JSON library that enforces cycle detection or depth limits. If an upgrade path becomes available, update to the first patched release; otherwise implement input validation or a proxy that rejects deeply nested or cyclic structures before they reach the parser.
How to confirm the fix worked
Test the updated parser with known cyclic JSON payloads and confirm that recursion is terminated with an error rather than a crash; monitor process memory and CPU usage under load to verify stability.
Typical attack path
- Identify a network-accessible endpoint or API that parses JSON with mjson
- Generate or obtain a JSON payload containing cyclic object references
- Transmit the malicious payload in a request to the target parser
- Trigger resource exhaustion or crash, achieving denial of service
How to detect it
Review application and web-server logs for unusually large or deeply nested JSON request bodies; correlate with process crashes or high CPU events on hosts running mjson-based services. Examine any available exploit samples for characteristic cyclic structures.
What your security team should do
- Inventory all uses of mjson across the environment and prioritize replacement
- Apply network-level filtering or WAF rules to block abnormally nested JSON while remediation is in progress
- Add runtime monitoring for sudden spikes in parser CPU or memory consumption
The record
An issue was discovered mjson thru 1.4.1 allows attackers to cause a denial of service or other unspecified impacts via crafted object that uses cyclic dependencies.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:24.04:LTS | libmjson-java | 0 | No fix |
| Ubuntu:24.10 | libmjson-java | 0 | No fix |
| Ubuntu:25.04 | libmjson-java | 0 | No fix |
| Ubuntu:25.10 | libmjson-java | 0 | No fix |
Related vulnerabilities
- CVE-2026-111497 A buffer overflow vulnerability in the Brotli decoder (c/dec/decode.c) in Google Brotli… CWE-787
- CVE-2026-112397 Pillow is a Python imaging library. CWE-787
- CVE-2026-112059 libLAS through 1.8.1 contains a heap out-of-bounds write vulnerability in the point… CWE-787
- CVE-2026-89088 A flaw was found in parted. CWE-787
- CVE-2026-89085 A flaw was found in parted. CWE-787
- CVE-2026-85746 MariaDB server is a community developed fork of MySQL server. CWE-787
- CVE-2026-107815 MariaDB server is a community developed fork of MySQL server. CWE-787
- CVE-2026-56851 The Nickname profile can panic with an out-of-bounds slice error when transforming… CWE-787