T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:62
- Finding
- Unverified Remote Installer Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 62–66 **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 installation instructions download mutable content from an external server and pass it directly to a command interpreter. The Unix command pipes the HTTP response to `bash`, while the Windows command sends it to `Invoke-Expression`. No version pinning, cryptographic signature validation, checksum verification, or review step occurs before execution. Consequently, the code executed on a user's system can differ from the content that existed when the Skill was audited. Compromise of the hosting infrastructure, distribution path, DNS resolution, or installer publication process could turn these commands into an arbitrary-code-execution channel. Installing the required CLI is related to the Skill's declared IT Glue integration, but immediate execution of an unverified network response exceeds the minimum safe trust and privilege requirements. A safer installation process can download a fixed release, verify its integrity, and obtain user approval before execution. ### Attack Path 1. The Skill attempts to use the `oo` CLI and receives an `oo: command not found` error. 2. A user or agent follows the documented first-time installation fallback. 3. The command retrieves the current installer response from `cli.oomol.com`. 4. An attacker who has compromised the installer host, release process, CDN, DNS path, or equivalent delivery infrastructure substitutes malicious script content. 5. The shell or PowerShell interpreter executes the response immediately without integrity verification. 6. The substituted payload operates with the privileges of the invoking user and may access any ...[truncated 587 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove both direct pipe-to-interpreter installation commands. 2. Direct users to an authenticated official release page or trusted platform package manager. 3. Pin the CLI to a specific reviewed version rather than retrieving a mutable latest installer. 4. Download the installer or package to disk without executing it automatically. 5. Publish and verify a cryptographic signature from a separately trusted signing key. If signatures are unavailable, verify a version-specific SHA-256 checksum obtained through an independently protected channel. 6. Display the resolved version, download source, expected permissions, and verification result before requesting explicit user approval. 7. Execute the verified installer without administrator privileges unless a documented installation operation strictly requires elevation. 8. Prefer a sequence such as download, integrity verification, inspection, approval, and execution rather than combining retrieval and execution in one command. ]]>
