T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:58
- Finding
- Unverified Remote Shell Script Execution via curl and Bash<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, line 58 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical ### Vulnerable Code ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ### Technical Analysis The installation command downloads a remotely controlled shell script and immediately pipes it into Bash. The Skill does not pin a release version, verify a cryptographic signature or checksum, save the script for inspection, or validate its contents before execution. Although HTTPS protects the connection in transit, it does not protect against compromise of the hosting server, publishing account, DNS infrastructure, or upstream installation script. The effective executable payload can also change after the Skill package has been reviewed. This installation behavior exceeds the minimum privileges necessary for the declared Wappalyzer lookup functionality. The Skill only requires an existing `oo` CLI installation to invoke the connector; automatically executing mutable remote code is not necessary to perform a Wappalyzer query. ### Attack Path 1. The user or agent attempts to invoke the Skill on a system where `oo` is unavailable. 2. Following the first-time setup instructions, it executes the documented `curl | bash` command. 3. `curl` retrieves the current content of `https://cli.oomol.com/install.sh`. 4. The response is passed directly to Bash without integrity or authenticity verification. 5. If the remote source or delivery infrastructure is compromised, attacker-controlled shell commands execute with the privileges of the invoking account. 6. Those commands can access user-readable information, modify files, install additional software, or retrieve and execute further payloads. ### Impact Assessment A malicious installation script obtains arbitrary command execution under the invoking user's identity. It can read or modify any files accessible to that account, acce ...[truncated 383 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove the direct pipe from `curl` to Bash. 2. Prefer installation through a trusted platform package manager or a version-pinned release artifact. 3. If a script must be distributed, download it to a local file without executing it automatically. 4. Publish and verify a cryptographic signature or a pinned SHA-256 checksum before execution. 5. Display the verified script or provide an opportunity for manual inspection. 6. Require explicit user approval before running any installer. 7. Keep installation outside the normal Skill execution path; document it as a manual prerequisite rather than an action for the agent to perform. 8. Run installation with ordinary user privileges and avoid requesting elevated permissions unless a specific component strictly requires them. ]]>
