T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:55
- Finding
- Unverified Remote Installer Retrieval and Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 55–62 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical ### 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 download scripts from external URLs and immediately execute their contents using Bash or PowerShell. Neither command pins a version, verifies a cryptographic checksum or signature, nor provides an inspection step before execution. Although installing the `oo` CLI supports the declared Nylas integration, piping mutable remote content directly into an interpreter exceeds the minimum behavior necessary to install that dependency. HTTPS protects data in transit but does not guarantee that the delivered script is safe if the hosting account, server, DNS, certificate issuance process, or delivery infrastructure is compromised. It also does not prevent the publisher from changing the effective payload after this Skill has been audited. The PowerShell command is equivalent in security effect to the Bash command: `irm` retrieves arbitrary remote content and `iex` evaluates it as code. ### Attack Path 1. A user or agent attempts to use the Skill on a system where the `oo` CLI is unavailable. 2. The command fails with `oo: command not found`. 3. Following the first-time setup instructions, the user or agent executes one of the documented installer pipelines. 4. The external server returns the installer content available at that moment. 5. Bash or PowerShell executes the response without integrity verification or prior inspection. 6. If the distribution channel or payload is compromised, attacker-controlled code runs with the permissions of the invoking account. ### Impact Assessment A malicious installer could obtain arbitrary code execution under the invoking user's priv ...[truncated 868 chars]
- Remediation
- ## Remediation Suggestions 1. Remove both direct download-to-interpreter pipelines. 2. Publish versioned installer artifacts through a documented, trusted release channel. 3. Require users to download the selected artifact without executing it immediately. 4. Pin the CLI to an explicit version rather than retrieving a mutable latest installer. 5. Publish cryptographic checksums or signed release manifests through an independently authenticated channel. 6. Verify the artifact's signature or checksum before execution, and abort installation if verification fails. 7. Separate download, inspection, verification, and execution into distinct documented commands. 8. Prefer a reputable platform package manager where package provenance and signature validation are available. 9. Document the installer's expected files, permission changes, subprocesses, and network destinations. 10. Avoid elevated execution unless a specific installation step requires it; clearly explain and minimize any such privilege requirement.
