RustSec logo

History ⋅ Edit ⋅ JSON (OSV)

RUSTSEC-2026-0368

zip: ZipArchive::extract creates symbolic links whose attacker-controlled targets are outside the destination directory

Reported
Issued
Package
zip (crates.io)
Type
Vulnerability
Categories
Keywords
#privilege-escalation #symlink
Aliases
Patched
  • >=9.0.0

Description

In zip 9.0.0-pre2, ZipArchive::extract creates a symbolic link from an archive entry after validating only the output entry path. The link target bytes are passed directly to the platform symlink API, so a malicious archive can create an entry inside the destination that resolves to an attacker-chosen path outside it. This behavior was verified on macOS and Linux. On either platform, a subsequent application read or write through that extracted entry accesses the external target with the extracting process's permissions.

For further details see: https://github.com/zip-rs/zip2/security/advisories/GHSA-4v9h-p7m9-rh26

Advisory available under CC0-1.0 license.