spec: document Windows symlink traversal OS error 448#9980
spec: document Windows symlink traversal OS error 448#9980oz-for-oss[bot] wants to merge 1 commit intomasterfrom
Conversation
Co-Authored-By: Oz <oz-agent@warp.dev> Co-Authored-By: Dustin Wyatt <dmwyatt@users.noreply.github.com>
|
@oz-for-oss[bot] I'm starting a first review of this spec-only pull request. You can view the conversation on Warp. I completed the review and no human review was requested for this pull request. Comment Powered by Oz |
There was a problem hiding this comment.
Overview
This spec PR adds product and tech specs for Windows OS error 448 symlink and junction traversal parity. The product spec covers the affected terminal workflows and validation expectations, and the tech spec identifies the Windows shell spawn path and RedirectionGuard as the likely mitigation surface.
Concerns
- The tech spec allows a fallback that clears RedirectionGuard on the current Warp process without specifying how to scope, serialize, restore, or validate that unrelated Warp-spawned processes cannot inherit the relaxed policy.
Security
- The current-process fallback could weaken the Warp app process and unrelated subprocesses if implemented as written; require a shell-child-scoped mitigation or explicit guardrails before accepting that fallback.
Verdict
Found: 0 critical, 1 important, 0 suggestions
Request changes
Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz
|
|
||
| Fallback approach if Windows does not expose or honor a creation-time RedirectionGuard override: | ||
|
|
||
| - Before spawning a local terminal shell, call `SetProcessMitigationPolicy(ProcessRedirectionTrustPolicy, flags = 0)` from a narrowly-scoped Windows helper and verify with `GetProcessMitigationPolicy` that the current process is not enforcing redirection trust for subsequently-created shell processes. |
There was a problem hiding this comment.
Summary
Validation
Notes
Related issue: #9044