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 execution **Risk Level**: High **Complete Code Snippet**: ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ### Technical Analysis The installation command downloads a shell script from an external server and immediately passes it to `bash`. The remote payload is not pinned to a specific version, inspected before execution, or validated with a cryptographic signature or checksum. Although the download domain appears associated with the declared OOMOL service and the instruction is limited to first-time setup after an `oo: command not found` error, the effective code can change after the Skill has been reviewed. Compromise of the hosting infrastructure, deployment pipeline, DNS resolution, or TLS trust chain could therefore turn this command into an arbitrary-code execution path. Installing the required CLI is relevant to the Skill's declared functionality. However, direct execution of mutable remote content exceeds the minimum privilege and trust necessary to install that CLI safely. ### Attack Path 1. The `oo` CLI is unavailable, causing an `oo: command not found` error. 2. The user or Agent follows the first-time setup instruction in `SKILL.md`. 3. `curl` retrieves the current contents of `https://cli.oomol.com/install.sh`. 4. The downloaded content is streamed directly into `bash` without integrity or authenticity verification beyond HTTPS. 5. If the remote payload or delivery path has been compromised, attacker-controlled shell commands execute with the privileges of the invoking user. ### Impact Assessment A malicious installer could read or modify any data accessible to the invoking account, steal local credentials, alter shell configuration, install additional software, tamper with development environments, or establish persistence. If the command is run from a ...[truncated 349 chars]
- Remediation
- ## Remediation Suggestions - Do not stream downloaded content directly into a shell. - Distribute the CLI through a trusted platform package manager or provide a version-pinned installer artifact. - Download the artifact to a local file, verify a publisher signature and a checksum obtained through an independently protected channel, and only then execute it. - Pin the expected CLI and installer version rather than retrieving a mutable latest-version script. - Display the source, version, checksum, requested permissions, and intended changes before requesting explicit user approval. - Run installation with ordinary user privileges unless a documented operation strictly requires elevation. - Keep installation outside automatic Skill execution and continue requiring it only after a confirmed missing-command error.
