Description (CNA)
IO::Uncompress::Unzip versions before 2.220 for Perl allow CPU exhaustion via per-byte read loop in fastForward. fastForward() compares length $offset (the digit count of the offset, 1 to 19) against the chunk size $c instead of $offset itself, so $c shrinks from 16 KiB to 1-19 bytes per iteration. Extracting a named entry from an attacker supplied zip via IO::Uncompress::Unzip->new($zip, Name => $target) drives a per-byte read loop scaling with the entry's compressed size, up to the non-Zip64 4 GiB cap.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| PMQS / IO::Uncompress::Unzip | affected 0 before 2.220 |
CWE
CWE-407
References
- https://github.com/pmqs/IO-Compress/commit/68db44076f4c1a86a2ffe53a958eac6cabaf72e2.patch
- https://metacpan.org/release/PMQS/IO-Compress-2.220/changes
ADP enrichment
No English description supplied.
No English description supplied.
No references supplied.