CVE-2026-129113 · Package
NO FIX YET · SEE WHAT TO DO
JSON::XS versions from 4.0_00 before 4.05 corrupt the incremental parser's buffer length after a top-level number, so input such as "1-2" sent to an incremental consumer can make the next read exit the process through perl's out-of-memory path. The sources describe a process crash, not code execution.
first public Nov 14, 2026 · 1 source
Check it with your coding agent
It reads this page and tells you if your code or app is affected.
Exposure needs a Perl program that uses JSON::XS's incremental parser (incr_parse and incr_text) on input a remote peer can send. Programs that only decode complete JSON documents with decode_json are not described as affected. unknown whether other parsers or configurations are involved beyond what the sources state.
Not affected if non-incremental-parsing, versions-4.05-or-later
Who cares json-xs, network-services, perl
perl -MJSON::XS -e 'print $JSON::XS::VERSION' to read the installed version4.05 or later (the sources give 'before 4.05' as the fixed boundary)JSON::XS versions from 4.0_00 before 4.05 for Perl corrupt the incremental buffer length by chopping past its end in incr_skip after a top-level number.
The incremental parser scans any run of digits, signs, dots and exponent markers as one number, but the decoder stops at the end of a valid number, so the parser keeps an offset into bytes it has not decoded. It then empties the buffer without clearing those bytes, and a later incr_parse call without new input reads them again and moves the offset past the end of the buffer. incr_skip, the documented recovery after an error, removes that many bytes and the buffer length wraps.
A peer sending input such as "1-2" to an incr_parse consumer can make the next read of incr_text exit the process through perl's uncatchable out-of-memory path.
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.
Are you affected?
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
InfraStack checks it against your stack and answers on your report, with the evidence and the fix.