Description
Cpanel::JSON::XS versions from 4.51 before 4.80 for Perl allow quadratic CPU use by revalidating the remaining buffer per value in incr_parse.
At the first non-ASCII byte in a string, the decoder validates UTF-8 from there to the end of its input. incr_parse decodes each buffered value with a fresh decoder, so every value revalidates the rest of the buffer, and doubling the input quadruples the work.
A peer that sends about a megabyte of ordinary non-ASCII JSON in one read ties up the process for seconds of CPU time.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| — | Cpanel-JSON-XS | 4.51 – < 4.80 | 4.80 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | libcpanel-json-xs-perl | 4.80-1 | — |
| Debian 13 | libcpanel-json-xs-perl | No fix yet | — |
| Debian 12 | libcpanel-json-xs-perl | No fix yet | — |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP7 | perl-Cpanel-JSON-XS | 4.800.0-150700.3.9.1 | SUSE-SU-2026:4926-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | perl-Cpanel-JSON-XS | 4.800.0-1.1 | openSUSE-SU-2026:12217-1 |
| openSUSE Leap 16.0 | perl-Cpanel-JSON-XS | 4.800.0-bp160.1.1 | openSUSE-SU-2026:22187-1 |
Advisories 3
- openSUSE-SU-2026:22187-1 Security update for perl-Cpanel-JSON-XS SUSE / openSUSE Security Updates · Nov 1, 2026
- SUSE-SU-2026:4926-1 Security update for perl-Cpanel-JSON-XS SUSE / openSUSE Security Updates · Oct 29, 2026
- openSUSE-SU-2026:12217-1 perl-Cpanel-JSON-XS-4.800.0-1.1 on GA media SUSE / openSUSE Security Updates · Oct 22, 2026