T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:58
- Finding
- Unverified Remote Installer Download and Immediate Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 58–67 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical The first-time setup instructions execute mutable remote installation scripts directly in Bash or PowerShell: ```markdown - **`oo: command not found`** — install the oo CLI (other platforms: <https://cli.oomol.com/install-guide.md>): ```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 Both installation commands combine retrieval and execution without pinning an immutable release, validating a cryptographic signature or checksum, or allowing the downloaded script to be inspected before execution. HTTPS protects the connection to the resolved endpoint, but it does not guarantee that the installer remains unchanged after the Skill has been audited. Compromise of the distribution server, publishing process, account, or related infrastructure could replace the installer with arbitrary code. The Bash command passes the response body directly to a shell, while the PowerShell command executes it through `Invoke-Expression`. Installing the CLI is only a fallback when `oo` is unavailable and is not required for ordinary Discourse operations after installation. Immediate remote-script execution therefore exceeds the minimum runtime privileges necessary for the Skill's declared connector functionality. ### Attack Path 1. The `oo` executable is absent, causing the documented first-time setup path to apply. 2. An attacker compromises or gains control over the remote installer distribution path and replaces `install.sh` or `install.ps1`. 3. The user or agent follows the Skill instructions. 4. `curl` or `Invoke-RestMethod` retrieves the attacker-controlled response. 5. Bash or `Invoke-Expression` immediately in ...[truncated 798 chars]
- Remediation
- ## Remediation Suggestions 1. Remove all `curl | bash` and `irm | iex` installation patterns. 2. Direct users to an official package manager or versioned release artifact from a documented distribution channel. 3. Pin the installer or binary to a specific immutable version. 4. Download the artifact to disk without executing it. 5. Verify a publisher signature and a SHA-256 digest obtained through a separately protected, pinned source. 6. Permit inspection of the downloaded artifact before execution. 7. Require explicit user approval before running any installer. 8. Run installation with ordinary user privileges unless a narrowly scoped operation demonstrably requires elevation. 9. Prefer documenting installation as a manual prerequisite rather than allowing an agent to invoke an installer automatically.
