T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:58
- Finding
- Unverified Remote Installer Scripts Executed Directly by Shells<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 58–62 **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 installation instructions retrieve mutable scripts from an external URL and immediately execute them using Bash or PowerShell. Neither installation path pins a specific release or expected cryptographic digest, verifies a publisher signature, saves the script for inspection, nor constrains the privileges available to the installer. HTTPS protects the connection in transit but does not make the retrieved payload immutable. The effective code can change after the Skill has been audited. Compromise of the download service, publishing account, DNS infrastructure, TLS trust path, or upstream build process could therefore turn these instructions into an arbitrary-code execution channel. Installing the declared CLI may be necessary when it is absent, and the Skill appropriately presents installation as an error-triggered fallback rather than a routine action. However, immediate execution of unverified network content exceeds the minimum privilege and trust necessary to install that CLI. No evidence establishes that the currently hosted scripts are malicious; the vulnerability is the unsafe and mutable execution mechanism. ### Attack Path 1. The `oo` CLI is genuinely absent, or the user encounters an error interpreted as `oo: command not found`. 2. The Agent or user follows the first-time setup instructions. 3. An attacker compromises or controls the remote installer response through the hosting or publication infrastructure, DNS, TLS trust path, or another upstream supply-chain component. 4. `curl` or `Invoke-RestMethod` retrieves the attacker-controlled script. 5. The pipe to ...[truncated 921 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove both direct download-to-shell patterns. 2. Prefer a trusted operating-system package manager or an official package repository that performs package-signature and integrity verification. 3. Pin the installation to a specific audited CLI release rather than a mutable installer endpoint. 4. If direct download is unavoidable: - Download the artifact without executing it. - Obtain the expected SHA-256 digest or signature through a separately trusted channel. - Verify the digest and publisher signature locally. - Stop installation if verification fails. - Present the verified script or package for review before execution. 5. Require explicit, informed user approval before installing software or running installer code. 6. Run installation without administrative privileges unless a specific installation step demonstrably requires elevation. 7. Document the expected files, directories, network destinations, and configuration changes made by installation. 8. Keep the existing behavior of attempting installation only after a genuine command-not-found error. ]]>
