T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:64
- Finding
- Unverified Remote Installer Scripts Executed Directly by Shells<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 64–68 **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 setup instructions retrieve mutable scripts from external URLs and pass their contents directly to command interpreters. The POSIX instruction pipes the response into `bash`, while the Windows instruction passes it to PowerShell's `Invoke-Expression`. No version pinning, cryptographic signature verification, checksum validation, or manual inspection step occurs before execution. HTTPS protects the connection in transit but does not establish that the delivered script is a specific audited version. Compromise of the distribution server, DNS or account infrastructure, or the hosted installer itself could therefore turn these documented installation commands into an arbitrary-code-execution channel. Installing the required CLI is related to the Skill's functionality, but immediate execution of an unverified and mutable remote payload exceeds the minimum mechanism necessary to perform that installation. A pinned, signed package or separately downloaded and verified release artifact would provide the same capability with a smaller trust boundary. The audit did not establish that the currently hosted scripts are malicious. The vulnerability is that their effective behavior can change after the Skill has been reviewed, without any corresponding change to this repository. ### Attack Path 1. The `oo` command is unavailable on a user's system. 2. The user or agent follows the documented first-time setup instructions. 3. The shell requests the current `install.sh` or `install.ps1` payload from `cli.oomol.com`. 4. A compromised or subsequently modified remote payload is retur ...[truncated 865 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Replace pipe-to-shell and `Invoke-Expression` installation commands with installation through a trusted platform package manager or a pinned release artifact. 2. Pin the CLI to a specific version rather than retrieving a mutable installer with unspecified contents. 3. Publish cryptographic checksums and, preferably, signed release artifacts. Verify the signature or checksum locally before execution. 4. Separate download, verification, inspection, and execution into distinct commands. For example, download the installer to a local file, validate it, and only then execute it. 5. Document the expected publisher identity, release location, required permissions, installed files, and configuration changes. 6. Avoid requesting administrative privileges unless a documented installation operation strictly requires them. 7. If remote installer scripts must remain available, treat them as a fallback rather than the primary installation method and clearly warn users that they execute code from an external source. ]]>
