T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:102
- Finding
- Unverified Remote Installation Scripts Executed Directly by Shells<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 102–106 **Vulnerability Type**: Remote payload retrieval and 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 installation instructions retrieve executable content from remote URLs and pass it directly to `bash` or PowerShell's `Invoke-Expression`. The downloaded scripts are not pinned to an immutable release, inspected before execution, or verified using a cryptographic checksum or signature. Although HTTPS provides transport encryption and server authentication, it does not establish that the script will remain unchanged or benign after the Skill has been reviewed. Compromise of the distribution domain, DNS infrastructure, TLS credentials, hosting account, build pipeline, or installation scripts could cause arbitrary attacker-controlled commands to be executed. Installing the CLI may be relevant to the declared connector functionality, but immediate execution of mutable remote content exceeds the minimum privilege and trust necessary for installation. A package or versioned artifact can instead be downloaded and independently verified before execution. ### Attack Path 1. An attacker compromises the installation server, publishing pipeline, hosting account, DNS configuration, or another component serving `install.sh` or `install.ps1`. 2. The `oo` command is unavailable, causing a user or agent to follow the documented first-time setup procedure. 3. The installation command downloads the current remote script. 4. The shell executes the response immediately, without local inspection or integrity verification. 5. The malicious script runs arbitrary commands using the privileges of the invoking process. 6. The script may access user-readable files and credentials, alter local configu ...[truncated 865 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove all direct pipe-to-shell and `Invoke-Expression` installation commands. 2. Distribute the CLI through a trusted package manager or a versioned release artifact from an official repository. 3. Pin installation instructions to a specific immutable version rather than a mutable latest-installation URL. 4. Publish a SHA-256 checksum and, preferably, a cryptographic signature for each artifact. 5. Download the artifact to a local file, verify its checksum and signature, and only then execute or install it. 6. Require explicit user approval before running any installer; the agent should not install software automatically after a command failure. 7. Run installation with ordinary user privileges unless elevation is demonstrably required. 8. Document the expected files, network destinations, and system changes made by the installer. 9. Prefer instructions equivalent to the following controlled sequence: ```bash curl -fL -o oo-installer.sh "https://trusted.example/releases/v1.0.0/install.sh" printf '%s %s\n' "<published-sha256>" "oo-installer.sh" | sha256sum --check less oo-installer.sh bash oo-installer.sh ``` The actual URL, version, and checksum must come from a trusted, authenticated release channel. ]]>
