zip2のlegacy-zipで細工したZIPを処理するとサービスが停止する脆弱性
概要
legacy-zip機能を有効にしてビルドしたzip2の5.1.0から9.0.0までの版には、攻撃者が細工したZIP64の非圧縮サイズによってメモリの事前確保が過大になり、ZipArchive::extractの実行中にパニックが起きる脆弱性があります。パニックが処理されないと、アーカイブを扱うサービスが停止するおそれがあります。修正版は9.0.0です。
AI要約
外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。
legacy-zip機能を有効にしてビルドしたzip2の5.1.0から9.0.0までの版には、攻撃者が細工したZIP64の非圧縮サイズによってメモリの事前確保が過大になり、ZipArchive::extractの実行中にパニックが起きる脆弱性があります。パニックが処理されないと、アーカイブを扱うサービスが停止するおそれがあります。修正版は9.0.0です。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| zip-rs | zip2 | — | — |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
zip is a zip library for Rust that supports reading and writing simple ZIP files. From 5.1.0 until 9.0.0, applications built with the legacy-zip feature can reserve output capacity from an attacker-controlled ZIP64 uncompressed size before validating the compressed stream. The ShrinkDecoder path in src/legacy/shrink.rs can panic with a capacity overflow during ZipArchive::extract, and the Reduce and Implode decoders contain the same unbounded preallocation pattern. An unhandled panic can terminate an archive-processing service. This issue is fixed in version 9.0.0.
出典: CVE.org (CVE Program・cvelistV5) NVD