RUSTSEC-2026-0425
Mở trang đầy đủCVSS 7.5 HIGH Lộ dữ liệu
`nix-nar`: `Decoder::unpack` writes archive entries outside the destination directory (path traversal)
Mô tả
Decoder::unpack does not safely contain the paths it extracts, so a malicious NAR
archive can create files outside the destination directory — a path traversal
(CWE-22).
In src/dec.rs (Decoder::unpack):
- A symlink entry's target is written without checking where it points
(src/dec.rs:153), so the archive can create a symlink that escapes the
destination directory. - The out-of-destination containment check compares path strings only and does
not account for symlinks created earlier in the same unpack
(src/dec.rs:176-181), before reaching the write sinks
(std::fs::create_diratsrc/dec.rs:201andOpenOptions::openat
src/dec.rs:218). - The parser also accepts entry names containing
/(src/parser.rs:138-147).
Combined, a malicious archive can include a symlink a pointing at an external
directory and then an entry named a/b, causing b to be written to
<external>/b, outside the destination. This can create new files anywhere the
process can write (it cannot overwrite existing files), which is escalatable to code
execution by planting files in attacker-chosen locations.
Điểm và phân loại
- CVSS
- 7.5 HIGH v3.1
- Nguồn điểm
- OSV.dev
- Mức độ (theo nguồn)
- HIGH
- EPSS
- —
- CWE
- —
Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Ảnh hưởng
| Package | Bản bị ảnh hưởng | Bản đã sửa |
|---|---|---|
rust nix-nar |
< 0.6.0 |
0.6.0
|
Vì sao bị lọc
- CVSS 7.5 < 8.0 và không thuộc CISA KEV
Loại tác động
- Lộ dữ liệu
- từ khoá "path traversal"
Dữ liệu riêng của nguồn
- OSV.dev · ID
- RUSTSEC-2026-0425