T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:60
- Finding
- Unverified Remote Shell Script Execution on macOS and Linux## Vulnerability Details **File Location**: `SKILL.md`, line 60 **Vulnerability Type**: Remote payload retrieval and immediate execution **Risk Level**: Critical **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 server and pipes it directly into `bash`. The payload is executed without being saved for inspection, pinned to an immutable version, or validated through a cryptographic signature or checksum. HTTPS protects the connection in transit but does not protect users if the hosting infrastructure, publishing account, DNS configuration, or installer itself is compromised. Because the effective script can change after the Skill has been audited, its actual behavior cannot be established from the contents of this project. Installing the required CLI may be necessary for first-time setup, but immediate remote shell execution is not the minimum privilege or safest mechanism necessary to install it. The installer runs with the invoking user's general shell privileges, which is broader than the Skill's declared runtime restriction of `Bash(oo *)`. ### Attack Path 1. An attacker compromises the installer endpoint, its deployment pipeline, publishing credentials, or another component capable of changing the response from `https://cli.oomol.com/install.sh`. 2. The `oo` command is unavailable, causing the user or agent to follow the documented first-time setup procedure. 3. `curl` retrieves the attacker-controlled response. 4. The shell pipeline passes the response directly to `bash` without integrity verification or an inspection boundary. 5. The payload executes with the privileges of the account running the command and may retrieve further payloads, alter local files, or establish persistence. ### Impact Assessment Successful exploitation provides arbitrary command execution ...[truncated 473 chars]
- Remediation
- ## Remediation Suggestions Replace the pipe-to-shell installation command with a verifiable installation process: 1. Link to a version-pinned release artifact hosted by a verified publisher. 2. Download the artifact to a local file rather than executing the network response directly. 3. Publish and require verification of a cryptographic signature or a SHA-256 checksum obtained through a separately secured channel. 4. Allow the user to inspect the downloaded script or package before execution. 5. Document the exact files, directories, and permissions modified by the installer. 6. Avoid elevated privileges unless a specific platform operation requires them, and explain each such operation. 7. Prefer a trusted platform package manager with package signing and pinned versions where available. 8. Keep installation manual and user-controlled; the Skill should not automatically execute setup commands after a command-not-found error. A safer workflow is to download a pinned installer, verify its signature or checksum, and only then run the verified local file.
