CVE-2026-129114 PUBLISHED

JSON::XS versions from 3.04 before 4.05 for Perl write one byte past a heap buffer when appending a one-byte chunk in incr_parse

Assigner: CPANSec
Reserved: 13.11.2026 Published: 14.11.2026 Updated: 14.11.2026

JSON::XS versions from 3.04 before 4.05 for Perl write one byte past a heap buffer when appending a one-byte chunk in incr_parse.

The incremental buffer grows to one and a half times the length it must hold, with no room reserved for the terminating NUL. For an empty buffer and a one-byte chunk that request is one byte, which a buffer whose front was removed by earlier decodes can already have, so nothing is reallocated and the NUL lands one byte past the allocation.

A peer streaming data to an incr_parse consumer, choosing how the input is split into reads, can cause a one-byte heap out-of-bounds write.

Product Status

Package Collection https://cpan.org/modules
Package Name JSON-XS
Versions Default: unaffected
  • affected from 3.04 to 4.05 (excl.)

Solutions

Upgrade to JSON-XS 4.05 or later.

Credits

  • Albert Gierlach (rivit) reporter

References

Problem Types

  • CWE-193 Off-by-one Error CWE
  • CWE-122 Heap-based Buffer Overflow CWE