encode_stringify writes a value in its string form under allow_stringify, under convert_blessed for objects without TO_JSON, and under allow_bignum. For an array or hash object with a "" overload, and from 4.20 a scalar object, it takes an extra reference that is never released, so the object and everything it references are never freed. From 4.10 it also never frees its copy of the string.
Repeatedly encoding data that contains such values grows process memory without bound.
Analysis and contextual insights are available on OpenCVE Cloud.
Vendor Solution
Upgrade to Cpanel-JSON-XS 4.80 or later.
Tracking
Sign in to view the affected projects.
No advisories yet.
Thu, 29 Oct 2026 18:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Thu, 29 Oct 2026 17:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
Mon, 19 Oct 2026 21:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Rurban
Rurban cpanel::json::xs |
|
| Vendors & Products |
Rurban
Rurban cpanel::json::xs |
Mon, 19 Oct 2026 18:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Cpanel::JSON::XS versions from 3.0202 before 4.80 for Perl leak memory and retain overloaded objects when encoding values as strings in encode_stringify. encode_stringify writes a value in its string form under allow_stringify, under convert_blessed for objects without TO_JSON, and under allow_bignum. For an array or hash object with a "" overload, and from 4.20 a scalar object, it takes an extra reference that is never released, so the object and everything it references are never freed. From 4.10 it also never frees its copy of the string. Repeatedly encoding data that contains such values grows process memory without bound. | |
| Title | Cpanel::JSON::XS versions from 3.0202 before 4.80 for Perl leak memory and retain overloaded objects when encoding values as strings in encode_stringify | |
| Weaknesses | CWE-401 | |
| References |
|
Status: PUBLISHED
Assigner: CPANSec
Published:
Updated: 2026-10-29T17:01:30.913Z
Reserved: 2026-10-14T13:26:26.768Z
Link: CVE-2026-110684
Updated: 2026-10-29T17:01:04.457Z
Status : Awaiting Analysis
Published: 2026-10-19T19:17:21.990
Modified: 2026-10-29T17:18:00.567
Link: CVE-2026-110684
No data.
OpenCVE Enrichment
Updated: 2026-10-19T21:30:03Z
-
CWE-401
Missing Release of Memory after Effective Lifetime