T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:61
- Finding
- Unverified Remote Installer Download and Immediate Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 61–65 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical ```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 download mutable scripts from `cli.oomol.com` and pass their contents directly to a command interpreter. Neither command pins an immutable installer version nor verifies a cryptographic signature or checksum before execution. This design separates the code reviewed in the Skill from the code ultimately executed. The effective payload can change at any time after the audit. Compromise of the distribution server, publishing account, domain, DNS resolution, TLS infrastructure, or upstream build process could consequently turn the documented installation step into arbitrary code execution. Installing the required CLI supports the Skill's stated Runscope functionality, and the instructions only recommend installation after a command-not-found error. However, executing an unverified remote response immediately is not the minimum privilege or safest mechanism necessary to install that CLI. ### Attack Path 1. A user or Agent attempts to use the Skill on a system where the `oo` CLI is not installed. 2. The command fails with `oo: command not found`. 3. The user or Agent follows the first-time setup instructions. 4. `curl` or `Invoke-RestMethod` retrieves a mutable installer from the external OOMOL host. 5. The response is passed directly to Bash or PowerShell without integrity or authenticity verification beyond transport-level TLS. 6. If the hosted installer or delivery infrastructure has been compromised, attacker-controlled commands execute under the identity of the invoking user. ### Impact Assessment A substituted installer could ...[truncated 739 chars]
- Remediation
- ## Remediation Suggestions 1. Remove the direct `curl | bash` and `irm | iex` installation patterns. 2. Prefer a trusted platform package manager or a version-pinned release artifact from an official, documented distribution channel. 3. Require the installer or binary to be downloaded as a separate file before execution. 4. Publish a cryptographic checksum or digital signature through an independently protected channel and require verification before running the artifact. 5. Pin the CLI and installer to a specific immutable release rather than a mutable `install.sh` or `install.ps1` endpoint. 6. Display the resolved artifact URL, version, and expected digest so users can audit exactly what will execute. 7. Run installation with ordinary user privileges whenever possible. Request elevation only for a narrowly defined operation that genuinely requires it. 8. Document the installer's expected filesystem changes, network destinations, and required permissions. 9. If a bootstrap script remains necessary, download it first, verify its signature or checksum, allow inspection, and invoke it only after successful verification.
