T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:29- Finding
Mutable Remote Installation Scripts Executed Directly by the Shell
- Content
View full analysis
**Tip:** Detect the user's operating system first, then run the appropriate install command below. Do not run all commands — only the one matching the detected OS. ```bash # macOS / Linux curl -sSL https://raw.githubusercontent.com/okx/onchainos-skills/main/install.sh | sh # Windows PowerShell irm https://raw.githubusercontent.com/okx/onchainos-skills/main/install.ps1 | iex ``` ``` ### Technical Analysis Both installation commands retrieve scripts from the mutable `main` branch of an external GitHub repository and immediately execute them with the invoking user's privileges. The Linux/macOS command pipes the HTTP response directly to `sh`, while the Windows command passes it to `Invoke-Expression`. No immutable commit, release version, cryptographic checksum, or signature is specified. Consequently, the executable payload can change after this Skill has been audited. The security note following the commands recommends reviewing the scripts but does not technically enforce review, integrity verification, or user approval. This behavior is not necessary for the Skill's core function as an interactive setup guide. The Skill could instead provide verified download instructions or direct the user to reviewed installation documentation without automatically executing remote content. ### Attack Path 1. An attacker compromises the upstream repository, an authorized maintainer account, or the publication workflow. 2. The attacker replaces `install.sh` or `install.ps1` on the `main` branch with a malicious payload. 3. A user invokes the buyer workflow. 4. The Agent detects the operating system and runs the corresponding documented command. 5. The command downloads the current attacker-controlled r ...[truncated 918 chars]- Remediation
View remediation
