Cpanel::JSON::XS versions before 4.80 for Perl use the parent interpreter's scalars from a parser object cloned into a new ithread.
A parser object holds its callbacks and its incremental parse buffer as raw scalar pointers. When a thread is created, these are copied into the new interpreter unchanged, so the child's parser uses, and later frees, scalars that belong to the parent and may already have been freed there.
A parser created before a thread starts and used inside it can call freed callbacks, corrupt reference counts and crash the process.
Metrics
Affected Vendors & Products
References
History
Mon, 19 Oct 2026 21:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Rurban
Rurban cpanel::json::xs |
|
| Vendors & Products |
Rurban
Rurban cpanel::json::xs |
Mon, 19 Oct 2026 18:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Cpanel::JSON::XS versions before 4.80 for Perl use the parent interpreter's scalars from a parser object cloned into a new ithread. A parser object holds its callbacks and its incremental parse buffer as raw scalar pointers. When a thread is created, these are copied into the new interpreter unchanged, so the child's parser uses, and later frees, scalars that belong to the parent and may already have been freed there. A parser created before a thread starts and used inside it can call freed callbacks, corrupt reference counts and crash the process. | |
| Title | Cpanel::JSON::XS versions before 4.80 for Perl use the parent interpreter's scalars from a parser object cloned into a new ithread | |
| Weaknesses | CWE-416 | |
| References |
|
Status: PUBLISHED
Assigner: CPANSec
Published: 2026-10-19T18:12:05.543Z
Updated: 2026-10-19T18:12:05.543Z
Reserved: 2026-10-14T13:25:47.112Z
Link: CVE-2026-110681
No data.
Status : Awaiting Analysis
Published: 2026-10-19T19:17:21.767
Modified: 2026-10-19T20:50:17.967
Link: CVE-2026-110681
No data.