T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:59
- Finding
- Unverified Remote Shell Script Execution via curl and Bash<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:59` **Vulnerability Type**: Remote payload retrieval and immediate execution **Risk Level**: High ### Complete Code Snippet ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ### Technical Analysis The first-time setup instructions pipe a remotely retrieved installation script directly into Bash. The effective code executed by this command is not included in the reviewed project and can change at any time after the skill has been audited. The instruction does not pin a release, verify a cryptographic signature or checksum, or allow inspection before execution. Consequently, compromise of the hosting service, publication infrastructure, DNS/TLS environment, or installer account could cause arbitrary attacker-controlled shell commands to run. Although installation of the `oo` CLI supports the declared connector functionality, immediate execution of mutable remote content exceeds the minimum safe mechanism necessary to install that dependency. A verified, version-pinned package or artifact would provide the same functionality with less risk. ### Attack Path 1. The `oo` command is unavailable, causing the agent or user to consult the first-time setup instructions. 2. An attacker compromises the installer hosting or release infrastructure, or otherwise causes `https://cli.oomol.com/install.sh` to return modified content. 3. The documented command downloads the modified script. 4. The pipe passes the response directly to Bash without inspection or integrity verification. 5. The malicious script executes with the privileges and environment of the user running the command. 6. The payload may access user-readable files, credentials, environment variables, or install additional components within the user's permission boundary. ### Impact Assessment Successful exploitation provides arbitrary command execution under the invoking user's account. The attacker could read or ...[truncated 428 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Replace the `curl | bash` pattern with a version-pinned installation method from an official package repository or release page. - Download the installer to a local file before execution so its contents can be inspected. - Publish a cryptographic checksum or signature through an independently protected channel and verify it before running the installer. - Fail closed if integrity verification fails. - Require explicit user approval before installing software; the agent should not automatically execute installation instructions after a command failure. - Run installation with ordinary user privileges and avoid requesting elevation unless it is strictly necessary and separately approved. - Prefer a pattern such as: ```bash curl -fSLo install.sh "https://cli.oomol.com/releases/<PINNED_VERSION>/install.sh" # Verify an officially published signature or checksum here. bash install.sh ``` The placeholder version and integrity metadata must be replaced with a real, immutable release and trusted verification material. ]]>
