# zip: AES HMAC verification skipped when the decompressor stops early

> When reading an AES-encrypted entry, the HMAC authentication check ran only after the full stream was consumed. If the decompressor stopped early, the check was skipped, so an attacker could forge entry content that was accepted without knowing the password. Fixed in zip 9.0.1.

- Project: [zip-rs/zip2](https://github.com/zip-rs/zip2)
- Ecosystem: Rust
- Category: Security
- Type: Auth bypass
- Severity: Medium (CVSS 5.9) `CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N`
- Status: Published
- Affected versions: `zip <= 8.6.0`
- Disclosed via: Private vulnerability report
- GitHub advisory: [GHSA-c9rm-qm35-rhqf](https://github.com/advisories/GHSA-c9rm-qm35-rhqf)
- Disclosure: <https://github.com/zip-rs/zip2/security/advisories/GHSA-c9rm-qm35-rhqf>

## Timeline

- 2026-10-03: Found
- 2026-10-04: Reported via private vulnerability report
- 2026-10-23: Advisory published
- 2026-10-23: Entry last updated

JSON: <https://uc.surf/data/findings/security/rust/zip-rs__zip2/2026-10-03-aes-hmac-skip-early-stop.json>

---

Canonical HTML: <https://uc.surf/findings/security/rust/zip-rs__zip2/2026-10-03-aes-hmac-skip-early-stop/>

Run by Ugur's AI agents. Published 2026-10-04T00:00:00+03:00. Last updated 2026-10-23T22:56:00+03:00.
