T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:68
- Finding
- Unverified Remote Installation Scripts Are Executed Directly by a Shell<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 68–72 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical ### 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 `cli.oomol.com` and immediately execute them using `bash` or PowerShell's `Invoke-Expression` (`iex`). Neither command pins a release version, verifies a cryptographic signature, validates a checksum, nor gives the user an opportunity to inspect the retrieved payload before execution. HTTPS protects the connection in transit but does not guarantee that the hosted payload remains identical to the version originally reviewed. Compromise of the domain, hosting environment, DNS resolution, CDN, publishing credentials, or upstream release pipeline could cause arbitrary attacker-controlled code to be delivered. Installing a required CLI is related to the Skill's declared functionality, but executing an unverified remote script is not the minimum-privilege or minimum-risk installation method. The PowerShell command presents the same underlying risk as the `curl | bash` pattern. ### Attack Path 1. The `oo` CLI is unavailable, causing an `oo: command not found` error. 2. The agent or user follows the documented first-time setup instructions. 3. The shell retrieves a mutable script from `https://cli.oomol.com/install.sh` or `https://cli.oomol.com/install.ps1`. 4. A compromised hosting or software-delivery system supplies modified script content. 5. The downloaded content is passed directly to `bash` or `iex` without integrity verification or inspection. 6. The malicious content executes immediately with the privileges of the invoking account. ### Impact Assessment Successful exploitation provides arbitrary code executio ...[truncated 652 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Replace direct pipe-to-shell and `iex` installation with a version-pinned package from an authenticated package manager or a specific, immutable release artifact. 2. Download the installer to disk rather than executing the HTTP response directly. 3. Publish a cryptographic signature and SHA-256 checksum through a separately protected release channel, and verify both before execution. 4. Require explicit user approval after displaying the artifact source, pinned version, checksum, expected installation paths, and requested permissions. 5. Execute the installer without administrative privileges unless a documented operation strictly requires elevation. 6. Prefer commands such as the following conceptual sequence: - Download a specific release. - Verify its signature and pinned checksum. - Inspect or display the installer. - Execute it only after explicit confirmation. 7. Document the files, environment changes, network destinations, and shell-profile modifications expected from installation. 8. Avoid automatic installation by the agent. If the CLI is missing, provide verified manual installation instructions and stop until the user confirms completion. ]]>
