T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:62
- Finding
- Unverified Remote Installer Scripts Executed Directly by Shell Interpreters## Vulnerability Details **File Location**: `SKILL.md`, lines 62–66 **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 download mutable scripts from an external server and immediately pass their contents to Bash or PowerShell. Neither path pins an immutable installer version nor performs checksum or publisher-signature verification before execution. HTTPS provides transport protection but does not establish that the retrieved script is the same payload that was reviewed. A compromised hosting server, publishing account, content delivery system, or other delivery infrastructure could replace the installer. The modified response would then execute without an opportunity for inspection. Installation of the declared CLI is relevant to the Skill's operation, and the instructions are only presented as a fallback when the CLI is unavailable. However, granting a mutable remote response immediate shell execution exceeds the minimum privilege necessary to install the dependency securely. ### Attack Path 1. The `oo` CLI is unavailable, causing the agent or user to follow the first-time setup instructions. 2. An attacker compromises or gains control over the remote installer delivery path. 3. The attacker replaces `install.sh` or `install.ps1` with a malicious payload. 4. `curl` or `Invoke-RestMethod` retrieves the attacker-controlled response. 5. The pipe sends that response directly to `bash`, or `iex` evaluates it in PowerShell. 6. The payload executes locally with all permissions available to the invoking user. ### Impact Assessment Successful exploitation provides arbitrary command execution with the privileges of the user running th ...[truncated 550 chars]
- Remediation
- ## Remediation Suggestions - Remove all direct `curl | bash` and `Invoke-RestMethod | Invoke-Expression` installation patterns. - Direct users to an official package manager or a pinned, immutable CLI release. - Download the installer or binary to a local file without executing it immediately. - Verify a publisher signature and a SHA-256 checksum obtained through a separately trusted channel. - Pin the expected CLI version and checksum rather than retrieving a mutable latest-version installer. - Execute the verified artifact with ordinary user privileges and request elevated privileges only for narrowly defined operations that require them. - Document the expected files, installation paths, and system changes so users can review the installation. - If script-based installation remains necessary, show separate download, verification, inspection, and execution commands rather than piping network output into an interpreter.
