T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:57
- Finding
- Unverified Remote Shell Script Download and Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, line 57 **Vulnerability Type**: Remote payload retrieval and execution through a shell pipeline **Risk Level**: High ### Vulnerable Code ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ### Technical Analysis The installation instruction downloads a mutable script from an external URL and passes it directly to `bash`. The script is executed without being saved for inspection and without version pinning, checksum verification, or cryptographic signature validation. Although the download host is associated with the advertised OOMOL service, the project contains no mechanism that establishes the integrity or immutability of the retrieved content. The effective code executed by this instruction can therefore change after the Skill has been audited. Installing the required CLI may be legitimate, but executing an unverified network response is not the minimum privilege or safest installation mechanism necessary for that purpose. The command creates a remote code-execution channel whose behavior is determined by the server at execution time. ### Attack Path 1. The `oo` CLI is unavailable, causing the agent or user to consult the first-time setup instructions. 2. An attacker compromises the installer hosting infrastructure, publishing process, DNS resolution path, TLS termination point, or another component capable of altering the response. 3. The victim runs the documented `curl` pipeline. 4. `curl` retrieves the attacker-controlled response. 5. The shell executes that response immediately without integrity or authenticity verification. 6. The payload accesses files, credentials, network resources, or processes available to the invoking account and may install additional components. ### Impact Assessment Successful exploitation provides arbitrary command execution with the privileges of the account running the command. This may expose user-accessible files, loca ...[truncated 466 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Do not pipe a network response directly into a shell. 2. Direct users to a version-pinned CLI release from an authenticated release channel. 3. Download the installer or binary to a local file without executing it: ```bash curl --proto '=https' --tlsv1.2 -fL -o oo-installer.sh \ 'https://cli.oomol.com/releases/<pinned-version>/install.sh' ``` 4. Publish a SHA-256 digest through a separately protected release mechanism and verify it before execution: ```bash echo '<trusted-sha256> oo-installer.sh' | sha256sum --check - ``` 5. Prefer cryptographic signature verification using a documented vendor signing key. A checksum fetched from the same potentially compromised endpoint is insufficient by itself. 6. Allow the downloaded script to be reviewed before invoking it explicitly: ```bash bash ./oo-installer.sh ``` 7. Prefer a signed package distributed through a reputable operating-system package manager where available. 8. Document the permissions and filesystem changes required by the installer, and instruct users to run it without administrative privileges unless elevation is demonstrably necessary. ]]>
