T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:57
- Finding
- Unverified Remote Installer Scripts Executed Directly from the Network<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 57–61 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: High ### Vulnerable Code ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ```powershell irm https://cli.oomol.com/install.ps1 | iex # Windows PowerShell ``` ### Technical Analysis The first-time setup instructions pipe remotely downloaded content directly into Bash or PowerShell. Neither command pins an immutable installer version, verifies a cryptographic checksum or signature, nor gives the user an opportunity to inspect the downloaded script before execution. Although HTTPS protects the network transport, it does not establish that the retrieved script is immutable or safe. If the hosting service, publishing account, DNS resolution, TLS infrastructure, or installer delivery pipeline is compromised, the response can be replaced with arbitrary commands. The effective code executed by the Skill can therefore change after the reviewed `SKILL.md` file remains unchanged. This behavior is not required for the Skill's declared runtime function of reading OnceHub data. Normal operation only requires the `oo` connector CLI. Automatically recommending unrestricted remote script execution when that CLI is absent exceeds the minimum privileges needed for the connector operation. ### Attack Path 1. The `oo` command is unavailable, causing the first-time setup instructions to become applicable. 2. An attacker compromises or gains control over the remote installer delivery path, such as the hosting service, publishing account, DNS, or associated infrastructure. 3. The attacker modifies the response from `install.sh` or `install.ps1` to contain malicious commands. 4. The user or Agent runs the documented installation command. 5. Bash or PowerShell executes the response immediately without integrity verification or prior inspection. 6. The payload operates with the priv ...[truncated 712 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove both pipe-to-shell installation commands. 2. Direct users to an official package manager or a signed, versioned release artifact. 3. Pin the installer to a specific immutable release rather than a mutable generic URL. 4. Download the installer to a local file without executing it immediately. 5. Publish and verify a SHA-256 or stronger checksum over the downloaded artifact. 6. Prefer cryptographic signature verification using a trusted, separately distributed signing key. 7. Allow the user to inspect the downloaded script before execution. 8. Require explicit user approval before running any installer. 9. Run installation with ordinary user privileges unless elevation is demonstrably necessary. 10. Document the expected files, permissions, and system changes made by installation. A safer workflow is: ```bash curl -fSLo oo-install.sh "https://example.invalid/releases/<pinned-version>/install.sh" echo "<trusted-sha256> oo-install.sh" | sha256sum --check less oo-install.sh bash oo-install.sh ``` The actual release URL and checksum must come from a trusted, authenticated release channel. PowerShell installation should follow the equivalent download, signature or hash verification, inspection, and explicit execution sequence. ]]>
