---
id: CVE-2026-110678
title: >-
  Cpanel::JSON::XS versions before 4.80 for Perl allow memory exhaustion by
  buffering incremental input past max_size in incr_parse
summary: >-
  Cpanel::JSON::XS versions before 4.80 for Perl allow memory exhaustion by
  buffering incremental input past max_size in incr_parse.


  The parser appends each chunk to its buffer. In scalar or list context, it
  compares max_size with how far…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'
cvssSource: adp
cwe:
  - CWE-770
product: Cpanel-JSON-XS
affected:
  - Cpanel-JSON-XS < 4.80
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-10-29T16:44:46.401468Z'
published: '2026-10-19'
updated: '2026-10-29'
sourceUpdated: '2026-10-29T16:44:49.590Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-110678'
references:
  - url: >-
      https://github.com/rurban/Cpanel-JSON-XS/commit/d516f296b1714e06b0fb9eaae72f4558ae3d83d6.patch
  - url: 'https://metacpan.org/release/RURBAN/Cpanel-JSON-XS-4.80/changes'
tags:
  - cve.org
epss: 0.00486
epssPercentile: 0.41825
ingestedAt: '2026-10-19T18:35:50.144Z'
---

## Overview

Cpanel::JSON::XS versions before 4.80 for Perl allow memory exhaustion by buffering incremental input past max_size in incr_parse.

The parser appends each chunk to its buffer. In scalar or list context, it compares max_size with how far it has progressed, not with the buffer length. A chunk that starts with a NUL byte stops the parser before it progresses, and a call in void context skips the check, so the buffer grows without limit.

A peer streaming data to an incr_parse consumer can exhaust process memory regardless of max_size.

## Affected

- `Cpanel-JSON-XS < 4.80`

## Remediation

Upgrade to Cpanel-JSON-XS 4.80 or later.
