T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:55
- Finding
- Unverified Remote Installer Download and Immediate Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 55-63 **Vulnerability Type**: Remote payload retrieval and execution through mutable installation scripts **Risk Level**: Critical ### Vulnerable Code ```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 The setup instructions retrieve mutable scripts from `cli.oomol.com` and pass their contents directly to Bash or PowerShell. Neither command pins an installer version, verifies a cryptographic signature or checksum, nor gives the user an opportunity to inspect the downloaded code before execution. HTTPS protects the connection in transit but does not establish the integrity of the script over time. If the hosting service, publishing account, DNS configuration, TLS trust chain, or delivery infrastructure is compromised, arbitrary replacement code could be returned and executed. The installer scripts are not included in the audited project, so their behavior cannot be verified from the reviewed artifact. Installing the `oo` CLI may be necessary for the declared Gainsight NXT integration, but piping a mutable network response directly into a command interpreter exceeds the minimum-risk mechanism required to install that dependency. The Windows `irm | iex` instruction has the same underlying weakness as the Unix `curl | bash` instruction. ### 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`, activating the documented fallback setup procedure. 3. The user or agent runs the provided installation command. 4. The system downloads a mutable script from `cli.oomol.com` ...[truncated 1350 chars]
- Remediation
- ## Remediation Suggestions 1. Remove both direct download-to-interpreter pipelines: - `curl ... | bash` - `irm ... | iex` 2. Pin installation instructions to a specific, immutable CLI release and artifact. 3. Publish SHA-256 or stronger checksums through a separately protected channel and require verification before execution. 4. Cryptographically sign release artifacts and verify the signature against a documented, pinned publisher key. 5. Download the installer to a local file first rather than executing the network response directly. 6. Display the artifact path and verification result, then require explicit user approval before execution. 7. Prefer a reputable platform package manager with explicit version pinning and package-signature validation. 8. Do not let the Skill automatically install software merely because an operational command failed. 9. Run installation with ordinary user privileges unless elevated privileges are demonstrably required, and document any requested permissions. 10. Document the domains contacted, data handled, expected installer behavior, and rollback procedure so users can make an informed trust decision.
