CVE-2026-9516

HIGH

Cpanel::JSON::XS < 4.41 - UTF-8 BOM Decode Denial of Service

Title source: manual
STIX 2.1

Description

Cpanel::JSON::XS versions before 4.41 for Perl allow denial of service via UTF-8 BOM prefixed input when a decode filter callback throws. To skip a leading 3-byte UTF-8 BOM, decode_json() advances the input scalar's string pointer past the mark with SvPV_set() and restores it only on the normal return path. When decoding aborts through a Perl exception, for example a filter_json_object callback that croaks, the restore is skipped and the scalar is left with its string pointer offset into its own buffer and a shortened length. When that scalar is later freed, the allocator receives an invalid pointer and the interpreter aborts. A single BOM prefixed document decoded with a throwing filter callback crashes any caller.

Scores

CVSS v3 7.5
EPSS 0.0061
EPSS Percentile 44.2%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

CISA SSVC

Vulnrichment
Exploitation none
Automatable yes
Technical Impact partial

Details

CWE
CWE-755 CWE-763
Status published
Products (2)
RURBAN/Cpanel::JSON::XS < 4.41
rurban/cpanel\ < 4.41
Published Jun 03, 2026
Tracked Since Jun 03, 2026