CVE-2025-31115

XZ has a heap-use-after-free bug in threaded .xz decoder

State
Published
Severity
8.7 High
Published
Apr 3, 2025
Updated
Oct 15, 2026
Reserved
Mar 26, 2025

Read the record on cve.org

Description

XZ Utils provide a general-purpose data-compression library plus command-line tools. In XZ Utils 5.3.3alpha to 5.8.0, the multithreaded .xz decoder in liblzma has a bug where invalid input can at least result in a crash. The effects include heap use after free and writing to an address based on the null pointer plus an offset. Applications and libraries that use the lzma_stream_decoder_mt function are affected. The bug has been fixed in XZ Utils 5.8.1, and the fix has been committed to the v5.4, v5.6, v5.8, and master branches in the xz Git repository. No new release packages will be made from the old stable branches, but a standalone patch is available that applies to all affected releases.

Scores

CVSSScoreVectorSource
4.08.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NGitHub_M

Weaknesses

  • CWE-366 Race Condition within a Thread
  • CWE-416 Use After Free
  • CWE-476 NULL Pointer Dereference
  • CWE-826 Premature Release of Resource During Expected Lifetime

Affected Products

ProductVersions
xztukaani-project
  • >= 5.3.3alpha, < 5.8.1Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.