RUSTSEC-2026-0400: Use-after-free of a dictionary after a one-shot call on a context with an open stream
Maintainer thường phản hồi trong vòng 4 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 42/100
Hướng nghiên cứu
The report describes a use-after-free in zstd-safe one-shot calls when a context has an unfinished stream, but it does not identify files or tests in this repository. First trace where the client uses DCtx or CCtx and how it mixes one-shot and streaming operations. Done means establishing whether this project can hit the reported pattern and, if so, adding coverage and handling it safely.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
| Details | |
|---|---|
| Package | zstd-safe |
| Version | 5.0.2+zstd.1.5.2 |
| Warning | unsound |
| URL | https://github.com/gyscos/zstd-rs/commit/d34502a0ed07f80ab2aa4c65059578e0466f2467 |
| Patched Versions | >=8.2.0 |
| Unaffected Versions | <3.0.1 |
The one-shot DCtx and CCtx methods assumed the C library resets the
context, but it leaves an open stream as it is. When a stream was left
unfinished on a context, a one-shot call such as decompress_using_dict
could leave the context pointing at the dictionary borrowed for that call,
and the next streaming call resumed the stream against it after it was
freed: decompressed output then contained freed heap memory. On the
compression side, the stream resumed against the one-shot call's buffers.
This requires an application to use one context for both streaming and
one-shot calls without a reset in between. The flaw was corrected by
resetting the session after one-shot calls whenever a stream may be open.
- Ngôn ngữ chính
- Rust
- Star
- 10
- Fork
- 8
- Merge trung bình
- 6 ngày 3 giờ
- Pull request đã merge (30 ngày)
- 3
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của bitcoindevkit/electrum_streaming_client
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
bitcoindevkit/electrum_streaming_client#68 ·
Maintainer thường phản hồi trong vòng 4 ngày
-
RUSTSEC-2026-0386: `AsyncFd::new` and related constructors violate I/O safetyCó thể đã có người làm @noahjoeris đã nhận 1 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
bitcoindevkit/electrum_streaming_client#57 ·
Maintainer thường phản hồi trong vòng 4 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
bitcoindevkit/electrum_streaming_client#56 ·
Maintainer thường phản hồi trong vòng 4 ngày
-
GetTx documentationĐang mởdocumentation
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 78/100
bitcoindevkit/electrum_streaming_client#29 ·
Maintainer thường phản hồi trong vòng 4 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 40/100
bitcoindevkit/electrum_streaming_client#67 ·
Maintainer thường phản hồi trong vòng 4 ngày
Tất cả issue của bitcoindevkit/electrum_streaming_client
Issue tương tự
-
area: library data-loss type: bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
alplabai/signex#1740 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
test(fslc): the unreadable mutate catalog test pins the Unix I/O error text and fails on WindowsCó thể đã có người làm @rizumita đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 69/100
Maintainer thường phản hồi trong vòng 1 ngày
-
ServerProperties defaults white-list to true, so a fresh --dedicated server silently locks itselfĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
horizon-rust/horizon#3888 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
refactor
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
Maintainer thường phản hồi trong vòng 1 ngày