Skip to main content
VulnerabilityPublished

CVE-2026-9516: RURBAN Cpanel::JSON::XS · Release of Invalid Pointer or Reference

Affects RURBAN Cpanel::JSON::XSSource CVE Database V5

0
Compare

Not known to be exploited · CVSS 7.5 High : upgrade to 4.41 soon.

Data as of 30 Oct 2026, 11:52 UTC

CVSS 3.1 base score
7.5High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.3% chance of exploitation in 30 days – higher than 29% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 4.41
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 3 Jun 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 30 Oct 2026.

What to do

Upgrade Cpanel::JSON::XS and Cpanel-JSON-XS to 4.41.

Affected software

ProductAffectedFixed in
RURBANCpanel::JSON::XSAffected
  • <4.41
Fixed in
  • 4.41
GitHubCpanel-JSON-XSpkg:github/Cpanel-JSON-XSOther threatsAffected
  • <4.41
Fixed in
  • 4.41

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

If you cannot patch yet, avoid processing UTF-8 BOM prefixed JSON input with decode filter callbacks that may throw exceptions.

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.

References

Community reviews

Loading reviews…