Skip to main content

IO::Compress CVE-2026-48961

| EUVDEUVD-2026-32044 HIGH
Improper Handling of Exceptional Conditions (CWE-755)
2026-05-27 CPANSec GHSA-hjrw-gmwj-xc9c
7.3
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.3 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
SUSE
HIGH
qualitative
Red Hat
5.0 MEDIUM
qualitative

Primary rating from NVD.

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

Lifecycle Timeline

4
Source Code Evidence Fetched
May 29, 2026 - 18:31 vuln.today
Analysis Generated
May 29, 2026 - 18:31 vuln.today
CVSS changed
May 29, 2026 - 16:27 NVD
7.3 (HIGH)
CVE Published
May 27, 2026 - 02:34 nvd
UNKNOWN (no severity yet)

DescriptionCVE.org

IO::Compress versions from 2.207 before 2.220 for Perl ship a zipdetails CLI tool that crashes with undefined subroutine on Info-ZIP Unix Extra Field with 8-byte UID or GID.

When decode_ux() in bin/zipdetails handles an Info-ZIP Unix Extra Field (tag 0x7875) with UID Size or GID Size set to 8, causing zipdetails to decode an 8-byte UID or GID value, it dispatches through decodeLitteEndian(), which calls a misnamed helper unpackValueQ. The actual function defined in the same file is unpackValue_Q (with underscore); the call raises 'Undefined subroutine &main::unpackValueQ' and the script exits with status 255.

Library callers of IO::Compress and IO::Uncompress are not affected; the defect is in the bundled CLI tool.

AnalysisAI

Denial of service in the zipdetails CLI tool bundled with Perl's IO::Compress versions 2.207 through 2.219 causes the script to abort with status 255 when parsing a ZIP archive containing an Info-ZIP Unix Extra Field (tag 0x7875) that declares an 8-byte UID or GID size. The bug is a typo in the source (calling unpackValueQ instead of unpackValue_Q), and no public exploit is identified at time of analysis; library callers of IO::Compress/IO::Uncompress are unaffected. EPSS is negligible (0.02%) and impact is limited to crashing the inspection tool, not the consuming application.

Technical ContextAI

IO::Compress is a widely distributed Perl distribution (cpe:2.3:a:pmqs:io::compress) that ships utility binaries alongside its compression libraries. The affected component is bin/zipdetails, a ZIP inspection tool. When parsing the Info-ZIP New Unix Extra Field (header tag 0x7875), the decode_ux() routine reads UID/GID size bytes and dispatches into decodeLitteEndian() (sic), which for 8-byte values calls unpackValueQ - a function that does not exist; the file defines unpackValue_Q with an underscore. Perl raises 'Undefined subroutine &main::unpackValueQ' at runtime. The root cause maps to CWE-755 (Improper Handling of Exceptional Conditions): the code did not validate the UID/GID size against a whitelist of supported widths, and the misnamed symbol was never exercised because no one previously tested an 8-byte UID extra field.

RemediationAI

Vendor-released patch: upgrade IO::Compress to version 2.220 or later from CPAN (https://metacpan.org/release/PMQS/IO-Compress-2.220/changes); the upstream commit is https://github.com/pmqs/IO-Compress/commit/33c89d03d6e746ed2ead4f2f6570d47864c61bc7 and was disclosed via oss-security at http://www.openwall.com/lists/oss-security/2026/05/27/3. If immediate upgrade is not possible, avoid running zipdetails against untrusted ZIP archives, or replace its use in any automation with an alternative ZIP inspector such as unzip -l or zipinfo; note that those alternatives produce different output and any scripts parsing zipdetails output will need adjustment. Library-only consumers of IO::Compress/IO::Uncompress need take no action.

Vendor StatusVendor

SUSE

Severity: High

Share

CVE-2026-48961 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy