---
id: CVE-2026-110677
title: >-
  Cpanel::JSON::XS versions from 4.28 before 4.80 for Perl leak the array
  collecting duplicate key values under dupkeys_as_arrayref in decode_hv
summary: >-
  Cpanel::JSON::XS versions from 4.28 before 4.80 for Perl leak the array
  collecting duplicate key values under dupkeys_as_arrayref in decode_hv.


  With dupkeys_as_arrayref, the values of a duplicate object key are collected
  into a new arra…
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-401
product: Cpanel-JSON-XS
affected:
  - Cpanel-JSON-XS >= 4.28 < 4.80
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-10-29T16:43:11.877857Z'
published: '2026-10-19'
updated: '2026-10-29'
sourceUpdated: '2026-10-29T16:43:21.148Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-110677'
references:
  - url: >-
      https://github.com/rurban/Cpanel-JSON-XS/commit/edb13030a708afc2cde0d2629fb6bdd31288ce6c.patch
  - url: 'https://metacpan.org/release/RURBAN/Cpanel-JSON-XS-4.80/changes'
tags:
  - cve.org
epss: 0.00485
epssPercentile: 0.4178
ingestedAt: '2026-10-19T18:35:50.145Z'
---

## Overview

Cpanel::JSON::XS versions from 4.28 before 4.80 for Perl leak the array collecting duplicate key values under dupkeys_as_arrayref in decode_hv.

With dupkeys_as_arrayref, the values of a duplicate object key are collected into a new array. An extra reference is never released, so the array and every value in it outlive the decoded structure. The array also leaks when decoding fails after a duplicate key.

Repeatedly decoding untrusted JSON with a duplicate key holding a large value exhausts process memory.

## Affected

- `Cpanel-JSON-XS >= 4.28 < 4.80`

## Remediation

Upgrade to Cpanel-JSON-XS 4.80 or later.
