T03 · Remote Payload Retrieval and Execution
- Location
scripts/01_install_cast.sh:18- Finding
Unverified Remote Installer Is Downloaded and Executed
- Content
View full analysis
/dev/null 2>&1 || true done fi if ! has_cmd foundryup; then err "foundryup not found after install. Make sure ${FOUNDRY_BIN_DIR} is in PATH, then re-run." exit 1 fi foundryup ``` ### Technical Analysis The script pipes a mutable HTTPS response directly into `bash`. It does not pin an installer version, verify a cryptographic checksum or signature, save the response for inspection, or constrain what the downloaded program can modify. The subsequent `foundryup` invocation retrieves and installs further executable content through the same unpinned update channel. The URL appears associated with the legitimate Foundry project, but domain reputation alone is not an integrity control. Compromise of the server, distribution infrastructure, DNS or TLS trust chain, or upstream release process could change the effective code after this Skill has been reviewed. The downloaded code executes with all permissions of the user running onboarding and can access the wallet secrets subsequently created under that account. ### Attack Path 1. A user runs `scripts/run.sh` or `scripts/01_install_cast.sh` on a system where `cast` is absent. 2. The script requests the current response from `https://foundry.paradigm.xyz`. 3. An attacker who compromises the distribution endpoint or its delivery chain substitutes malicious shell content. 4. The response is immediately interpreted by `bash` without integrity verification. 5. The payload executes as the invoking user and may modify shell profiles, install persistent files, or wait for ...[truncated 549 chars]- Remediation
View remediation
