{"id":"CVE-2026-110674","published":"2026-10-19T19:17:21.090","lastModified":"2026-10-19T20:50:17.967","description":"Cpanel::JSON::XS versions from 4.33 before 4.80 for Perl miss duplicate non-ASCII bare keys, allowing type confusion under dupkeys_as_arrayref in decode_hv.\n\nWith allow_barekey, which relaxed enables, a bare key containing a non-ASCII byte is stored as UTF-8 but looked up as raw bytes, so a repeated key escapes the duplicate-key check and replaces the earlier value.\n\nFrom 4.41, under dupkeys_as_arrayref, a bare repeat replaces the array that collects a key's values with a plain value, and the next quoted repeat pushes onto that value as if it were an array. A JSON integer there is dereferenced as a pointer.\n\nUntrusted JSON decoded with relaxed and dupkeys_as_arrayref can crash the process or dereference an address chosen by a JSON number.","cvssScore":null,"cvssSeverity":null,"cvssVector":null,"cwes":["CWE-176","CWE-843"],"vendors":[],"products":[],"references":[{"url":"https://github.com/rurban/Cpanel-JSON-XS/commit/c52037857d6a99d96ebd1ce3e2fa769505f028cf.patch","tags":[]},{"url":"https://metacpan.org/release/RURBAN/Cpanel-JSON-XS-4.80/changes","tags":[]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-9334","tags":[]}],"exploitRefs":[{"url":"https://github.com/rurban/Cpanel-JSON-XS/commit/c52037857d6a99d96ebd1ce3e2fa769505f028cf.patch","tags":[]}],"hasPoc":true,"ai":null}