fix(guardrails): block-root-delete-target skips a PowerShell target holding a literal dollar sign
Maintainer thường phản hồi trong vòng 1 ngày
Một pull request liên quan đã được merge.
- #7071 của @kyle-sexton — đã merge
Đá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
- 48/100
Hướng nghiên cứu
Start by tracing the block-root-delete-target hook and its rdt_place_to operand handling for PowerShell single-quoted words; inspect the related work in #6020 and #6542. Reproduce the reported cases, including the cmd /c rd invocation from Bash, and determine whether that lane is wired or a declared gap. Done means literal $ operands and ::$ stream suffixes are judged safely, and the cmd case is judged or documented as a gap.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
block-root-delete-target leaves a PowerShell target alone when it holds a $, even inside single quotes, where PowerShell expands nothing. rdt_place_to returns "leave alone" for any $ in an operand that is not literal, and a PowerShell single-quoted word goes down that path.
On Win32, <dir>::$INDEX_ALLOCATION names the directory itself, so a spelling like the one below may reach a directory the guard would otherwise refuse.
Repro (hook side confirmed; PowerShell runtime side not verified)
With the key unset and cwd /:
Remove-Item -Recurse -Force 'D:\some\outside\dir'exits 2 (refused).Remove-Item -Recurse -Force 'D:\some\outside\dir::$INDEX_ALLOCATION'exits 0 (allowed).
Also seen in the same review: cmd /c rd /s /q <dir> issued from the Bash tool exits 0 even for a directory outside the allowed roots. Check whether this is a declared gap or a lane that is simply not wired.
Acceptance
- A single-quoted PowerShell operand is judged literally: a
$in it does not skip judgment. - A
::$INDEX_ALLOCATION(or other::$stream) suffix is judged as the directory before it, or refused. - The
cmd /c rdfrom Bash case is either judged or listed as a declared gap.
Related: #6020. Found by the security review of #6542.
- Ngôn ngữ chính
- Shell
- Star
- 22
- Fork
- 2
- Merge trung bình
- 8 giờ 34 phút
- Pull request đã merge (30 ngày)
- 946
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không 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 melodic-software/claude-code-plugins
-
needs-human needs-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
melodic-software/claude-code-plugins#7636 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
agent-ready needs-human
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
melodic-software/claude-code-plugins#7598 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
good first issue priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
melodic-software/claude-code-plugins#7530 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
needs-human priority: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
melodic-software/claude-code-plugins#7455 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
priority: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
melodic-software/claude-code-plugins#7351 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của melodic-software/claude-code-plugins
Issue tương tự
-
[Suggestion]: SFXMintĐang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 95/100
collabnix/awesome-mcp-lists#225 ·
Maintainer thường phản hồi trong vòng 9 ngày
-
good first issue
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 88/100
-
documentation needs-triage priority:medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
yeongseon/azure-functions-validation-python#546 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
loment run accepts -o and silently ignores it: no artifact is written and the exit code is 0Đang mởbug cli libc sev-5
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
good first issue help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
onurbaydas/VirtoMir#4 ·