CVE-2026-129115: JSON::XS versions from 3.0 before 4.05 for Perl read freed stack memory when a FREEZE result's serialisation grows the Perl stack under allow_tags in encode_rv

Published Nov 14, 2026
·
Updated

JSON::XS versions from 3.0 before 4.05 for Perl read freed stack memory when a FREEZE result's serialisation grows the Perl stack under allowtags in encoderv.

With allowtags, an object's FREEZE method is called in list context and each returned value is encoded through a saved Perl stack pointer. When encoding a returned value calls back into Perl, through TOJSON under convertblessed or another FREEZE, and that callback grows the stack, the stack is reallocated while the saved pointer still refers to the freed block.

Encoding such objects reads freed memory, and encode can return undef without an error.

Affected Software

4 affected components
debian/libjson-xs-perl*
debian/libjson-xs-perl*
debian/libjson-xs-perl*
debian/libjson-xs-perl<=4.040-1~deb12u1, <=4.040-1~deb13u1, <=4.040-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade JSON::XS to a version that resolves this vulnerability.

    Fixed in 4.05

Event History

Nov 14, 2026
CVE Published
via MITRE·11:54 AM
Data Sourced
via MITRE·11:54 AM
RemedyDescriptionWeakness
Data Sourced
via NVD·12:17 PM
DescriptionWeakness
Data Sourced
via OSV·12:17 PM
DescriptionAffected Software

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203