T03 · Remote Payload Retrieval and Execution
- Location
setup.md:24- Finding
Remote Installer Is Downloaded and Executed Without Integrity Verification
- Content
View full analysis
/dev/null 2>&1; then warn "uv is not installed. Choose one:" printf " curl -LsSf https://astral.sh/uv/install.sh | sh\n" printf " brew install uv\n" fail "Install uv and rerun: scripts/run.sh setup" fi ``` ### Technical Analysis The installation documentation instructs users to pipe an HTTPS response directly into a shell. Although the URL is presented as the official `uv` installer and `run.sh` only prints the command rather than automatically executing it, users following the prescribed installation process execute code whose effective contents can change after this Skill has been reviewed. There is no version-pinned installer artifact, expected cryptographic digest, detached signature, or review step between retrieval and execution. HTTPS authenticates the current endpoint but does not make the returned script immutable. Compromise of the distribution endpoint, its deployment process, DNS/TLS trust chain, or an upstream account could therefore turn this installation step into arbitrary local code execution. This behavior is not necessary for the Skill's browser-automation functionality. `uv` can instead be installed through a trusted package manager or a downloaded, versioned artifact whose integrity is verified before execution. ### Attack Path 1. A user or Agent runs `scripts/run.sh setup`. 2. The wrapper detects that `uv` is absent and prints the `curl | sh` installation command. 3. The user follows the Skill's documented instructions. 4. The shell downloads the curren ...[truncated 715 chars]- Remediation
View remediation
