Skip to content
Heist/ feed
Unrated

Cpanel::JSON::XS versions before 4.80 for Perl allow memory exhaustion by encoding exponent notation as full decimal digits under allow_bignum

Type: advisorySource: Official CVE List1 source record

Cpanel::JSON::XS versions before 4.80 for Perl allow memory exhaustion by encoding exponent notation as full decimal digits under allow_bignum. With allow_bignum, a JSON number with a fraction or exponent decodes to a Math::BigFloat, which stores the exponent separately and so decodes cheaply. Encoding it untyped or as JSON_TYPE_FLOAT writes the plain decimal form with one digit per unit of exponent. Nothing bounds the exponent, so the 12-byte text [1e30000000] encodes to 30 MB. Untrusted JSON decoded with allow_bignum and encoded again can exhaust memory and CPU.

Announced Group revision 1
Original source ↗

CVE-2026-110676

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-110676

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://github.com/rurban/Cpanel-JSON-XS",
    "modules": [
      "Cpanel::JSON::XS"
    ],
    "versions": [
      {
        "status": "affected",
        "version": "0",
        "lessThan": "4.80",
        "versionType": "custom"
      }
    ],
    "packageURL": "pkg:cpan/Cpanel-JSON-XS",
    "packageName": "Cpanel-JSON-XS",
    "programFiles": [
      "XS.xs"
    ],
    "collectionURL": "https://cpan.org/modules",
    "defaultStatus": "unaffected",
    "programRoutines": [
      {
        "name": "encode_rv"
      },
      {
        "name": "encode_sv"
      }
    ]
  }
]
Related CVEs
CVE-2026-110676

Source reference: /cveMetadata/cveId

Publisher severity

No explicit severity was provided.

Event
#39685 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement