T03 · Remote Payload Retrieval and Execution
- Location
SETUP.md:9- Finding
Remote Installer Is Downloaded and Executed Without Verification
- Content
View full analysis
Vulnerability Details
File Location:
SETUP.md:7-10andSETUP.md:202-205
Vulnerability Type: Remote payload retrieval and immediate shell execution
Risk Level: HighVulnerable Code
bash - [uv](https://astral.sh/uv) — Python package runner (handles dependencies automatically) ```bash curl -LsSf https://astral.sh/uv/install.sh | sh ```The same command is repeated in the troubleshooting instructions:
markdown ### "uv: command not found" - Install uv: `curl -LsSf https://astral.sh/uv/install.sh | sh` - Then restart your shell or run `source ~/.bashrc`Technical Analysis
The instructions pipe an HTTPS response directly into a shell. The retrieved installer is mutable and is neither pinned to a reviewed release nor verified with a cryptographic checksum or signature before execution.
Use of Astral's official domain reduces the likelihood of a malicious payload but does not eliminate the trust risk. Compromise of the distribution service, publishing infrastructure, DNS/TLS path, or installer itself would change the code executed by users without requiring any modification to this repository.
This behavior is not strictly necessary. The project could direct users to a versioned release package and require integrity verification before execution.
Attack Path
- An attacker compromises or gains control over the installer hosting or publishing infrastructure, or otherwise alters the response served from
https://astral.sh/uv/install.sh. - A user follows the project setup instructions.
curlretrieves the attacker-controlled response.- The pipe sends the response directly to
shwithout review or integrity validation. - The payload executes with the privileges of the invoking user.
- The payload can access files available to that user, including OpenClaw configuration, X credentials, project files, and other user data.
Impact Assessment
Suc ...[truncated 392 chars]
- An attacker compromises or gains control over the installer hosting or publishing infrastructure, or otherwise alters the response served from
- Remediation
View remediation
Remediation Suggestions
-
Remove all
curl | shinstructions. -
Direct users to a specific, versioned
uvrelease rather than a mutable installer endpoint. -
Require verification against a checksum published through an independent, authenticated release channel.
-
Prefer signed operating-system packages or official package-manager installation methods.
-
If a script-based installation remains necessary, split download and execution into separate steps:
bash curl -fL -o uv-installer.sh https://example.invalid/versioned/uv-installer.sh echo "EXPECTED_SHA256 uv-installer.sh" | sha256sum --check - less uv-installer.sh sh uv-installer.sh -
Pin the URL to an immutable release artifact and document how users can verify its signature.
-
