CVE-2026-34743
Medium · 5.3CVSS
5.3
EPSS
0.5%
Published
Apr 2, 2026
CISA due date
—
Cloudanix analysis
A flaw in a common compression library can let a specially made compressed file crash software that processes it, so affected systems should be updated.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Buffer Overflow
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
This is a buffer overflow in XZ Utils/liblzma before 5.8.3. When software uses lzma_index_decoder() to parse an XZ Index that contains no Records, the resulting lzma_index object can be left in an inconsistent state. If that same object is later passed to lzma_index_append(), liblzma may allocate an undersized buffer and write past its bounds. The currently described impact is primarily availability degradation or process crash; practical remote exploitation requires an application or service to accept attacker-controlled XZ data and exercise this specific decode-then-append API path.
Why it matters to the business
Organizations using XZ Utils or liblzma in file-processing services, package ingestion pipelines, backup/archive workflows, security scanners, or content-processing applications may experience crashes or service instability when processing crafted compressed data. The public exploitation signal is currently low: EPSS is 0.0045 with no 30-day increase, there is no known KEV listing, no ransomware association, and no public exploit maturity reported. However, because XZ is widely embedded in Linux and open-source software supply chains, vulnerable versions can be indirectly present through downstream packages and should be updated during normal patch cycles, with higher priority for internet-facing or automated file-processing systems.
How an attack unfolds
An attacker prepares a malformed XZ stream or object containing an Index with no Records. The attacker then delivers that content to software that uses liblzma to decode the Index through lzma_index_decoder(). If the target software subsequently appends to the decoded index using lzma_index_append(), the vulnerable library may miscalculate allocation size and trigger a buffer overflow. In most expected scenarios this results in a crash of the consuming process or denial of service. Code execution has not been established from the provided information, and exploitation depends on the target application using the vulnerable API sequence on attacker-controlled input.
How to fix it
Upgrade XZ Utils/liblzma to version 5.8.3 or later wherever it is installed or bundled. Prioritize systems that automatically process untrusted compressed files, including web upload handlers, artifact repositories, malware scanners, package build systems, CI/CD pipelines, backup/archive services, and mail or document-processing gateways. Where immediate upgrade is not possible, reduce exposure by blocking or quarantining untrusted XZ/LZMA inputs, disabling optional XZ processing features where feasible, isolating file-processing workloads, applying process sandboxing, and enforcing resource limits and crash supervision. Also review statically linked or vendored copies of liblzma, because operating-system package updates may not remediate applications that embed their own copy.
How to confirm the fix worked
Confirm installed and bundled XZ Utils/liblzma versions are 5.8.3 or later. Use package-manager inventory, container image scans, SBOMs, and binary inspection to identify vulnerable liblzma copies, including statically linked or vendored dependencies. Validate that applications handling compressed input load the patched liblzma shared object at runtime. Regression testing should include malformed XZ files with empty Index Records to ensure the application rejects or safely handles them without crashing. For high-risk services, monitor after patching to confirm crash rates, core dumps, and parser errors return to baseline.
Typical attack path
- Identify an application, service, pipeline, or tool that links against vulnerable XZ Utils/liblzma before version 5.8.3.
- Confirm the target processes attacker-supplied XZ, LZMA, archive, package, backup, telemetry, or scanning input.
- Craft an XZ/LZMA input whose Index contains no Records and is accepted by the target parser.
- Deliver the crafted compressed content through an upload, package ingestion, email attachment, repository mirror, API, scanning queue, or other file-processing path.
- Trigger application behavior that decodes the Index with lzma_index_decoder() and later calls lzma_index_append() on the resulting object.
- Cause an undersized allocation and buffer overflow, typically resulting in process termination, service instability, or denial of service.
How to detect it
To determine whether this was already exploited, focus on evidence of crafted compressed-content processing followed by application crashes. Review application logs for failed XZ/LZMA parsing, abnormal termination, segmentation faults, heap corruption, or allocator errors near file upload, archive extraction, package ingestion, scanning, backup, or CI/CD processing events. Check system logs, crash reporters, core dump directories, EDR telemetry, and container restart histories for processes linked to liblzma that terminated unexpectedly after handling compressed files. Useful sources include syslog, journald, kernel logs, application parser logs, web upload logs, artifact repository logs, mail gateway logs, CI worker logs, container orchestrator events, coredumpctl, crash dump metadata, and EDR process telemetry. If AddressSanitizer, hardened malloc, or similar runtime protections are enabled, search for heap-buffer-overflow or allocation-size corruption reports mentioning lzma_index_append(), lzma_index_decoder(), or liblzma. There are no known attacker-specific indicators, threat actor patterns, or ransomware campaign markers associated with this issue from the provided intelligence, so detections should be behavior- and artifact-based rather than IOC-only.
- lzma_index_append
- lzma_index_decoder
- liblzma.so
- liblzma
- heap-buffer-overflow
- buffer overflow
- segmentation fault
- SIGSEGV
- malloc(): corrupted
- corrupted size vs. prev_size
- double free or corruption
- coredump
- AddressSanitizer
- xz
What your security team should do
- Inventory all XZ Utils/liblzma installations and embedded copies across servers, containers, appliances, developer workstations, build systems, and application dependencies.
- Upgrade affected XZ Utils/liblzma components to 5.8.3 or later, prioritizing internet-facing and automated untrusted file-processing workloads.
- Identify applications that process XZ/LZMA input from users, partners, repositories, email, CI/CD jobs, or scanning queues and verify whether they link against vulnerable liblzma versions.
- Temporarily restrict or sandbox untrusted XZ/LZMA processing where upgrades cannot be completed quickly.
- Add monitoring for crashes, segmentation faults, core dumps, and sanitizer reports involving liblzma, lzma_index_decoder(), or lzma_index_append().
- Review SBOMs and container images for vendored or statically linked liblzma copies that may not be updated by the host package manager.
- Because current exploitation likelihood is low and there is no KEV or ransomware association, treat this as a normal-to-elevated patching item, raising urgency for services that parse attacker-controlled compressed content.
The record
XZ Utils provide a general-purpose data-compression library plus command-line tools. Prior to version 5.8.3, if lzma_index_decoder() was used to decode an Index that contained no Records, the resulting lzma_index was left in a state where where a subsequent lzma_index_append() would allocate too little memory, and a buffer overflow would occur. This issue has been patched in version 5.8.3.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| openSUSE:Tumbleweed | xz | 0 | 5.8.3-1.1 |
Related vulnerabilities
- CVE-2026-112403 Pillow is a Python imaging library. CWE-122
- CVE-2026-112393 Pillow is a Python imaging library. CWE-122
- CVE-2026-112395 Pillow is a Python imaging library. CWE-122
- CVE-2026-103658 GNU Aspell 0.60.8.2 (first vulnerable version is not known) contains a heap-based buffer… CWE-122
- CVE-2026-107161 A heap-based buffer overflow flaw was found in Cyrus SASL. CWE-122
- CVE-2026-106574 ImageMagick is free and open-source software used for editing and manipulating digital… CWE-122
- CVE-2026-106564 ImageMagick is free and open-source software used for editing and manipulating digital… CWE-122
- CVE-2026-46570 In NTFS-3G before 2026.7.7, a heap buffer overflow exists in ntfs_index_walk_down() in… CWE-122