T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:56
- Finding
- Unverified Remote Installer Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 56–60 **Vulnerability Type**: Remote payload retrieval and immediate 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 installation instructions retrieve mutable scripts from an external server and immediately pass them to Bash or PowerShell for execution. The downloaded content is not pinned to a specific release, saved for review, checked against a trusted cryptographic digest, or verified using a publisher signature. HTTPS provides transport protection but does not establish that the script itself is safe. Compromise of the hosting server, domain, content-delivery infrastructure, or release pipeline could cause arbitrary replacement content to execute without any corresponding change to the reviewed Skill. This behavior exceeds the minimum privileges required for the declared read-oriented KIE.AI operations. Although installation is presented as a conditional first-time setup step, invoking it grants the current remote response arbitrary code-execution capability under the permissions of the user running the agent. ### Attack Path 1. The agent attempts to use the documented `oo` connector commands. 2. The command fails because the `oo` CLI is not installed. 3. Following the first-time setup instructions, the agent invokes the relevant installation command. 4. The shell downloads the current contents of `install.sh` or `install.ps1`. 5. The response is passed directly to Bash or PowerShell without inspection or integrity verification. 6. If the hosting or delivery infrastructure has been compromised, attacker-controlled commands execute locally with the invoking user's permissions. ### Impact Assessment A malicious installer response could execute arbitrary commands, read or mo ...[truncated 592 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove direct `curl | bash` and `irm | iex` execution instructions. 2. Pin installation to a specific, reviewed CLI version rather than a mutable installer URL. 3. Download the installation artifact to disk without executing it. 4. Publish and verify a cryptographic signature from a trusted release key. At minimum, verify a pinned SHA-256 digest obtained through an independent trusted channel. 5. Prefer an official package manager or signed release artifact with reproducible versioning and integrity metadata. 6. Require explicit user approval before installing software or executing any downloaded artifact. 7. Run installation with ordinary user privileges unless a narrowly defined installation operation demonstrably requires elevation. 8. Display the artifact source, version, expected digest, and requested permissions before execution. 9. Keep CLI installation outside normal Skill execution where possible; document it as a user-managed prerequisite instead of allowing an agent to bootstrap executable code automatically. ]]>
