T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:58
- Finding
- Unverified Remote Installer Download and Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 58–62 **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 first-time setup instructions pipe remotely downloaded content directly into Bash or PowerShell. The remote payload is executed without being saved for inspection, pinned to a reviewed version, or validated with a cryptographic signature or checksum. Although the scripts are hosted on an apparent vendor domain and installation is only suggested after an `oo: command not found` error, the effective executable payload remains mutable after the Skill has been reviewed. Compromise of the vendor domain, deployment pipeline, DNS or TLS trust chain, or the installer itself could therefore turn these instructions into arbitrary code execution. This installation method exceeds the minimum privilege necessary for the Skill's normal read-only SmartRecruiters functionality. The connector operations only require an already installed `oo` CLI; automatically executing an unverified installer is not necessary to inspect schemas or retrieve SmartRecruiters records. ### Attack Path 1. A user invokes the Skill on a system where the `oo` CLI is unavailable. 2. An attempted connector command fails with `oo: command not found`. 3. The agent or user follows the documented first-time setup instructions. 4. The shell downloads `install.sh` or `install.ps1` from the remote server. 5. Bash or PowerShell executes the response immediately without integrity verification. 6. If the remote distribution channel has been compromised, attacker-controlled commands execute with the privileges of the invoking account. 7. The payload may access that account's files and credentials, ...[truncated 777 chars]
- Remediation
- ## Remediation Suggestions 1. Remove the pipe-to-shell and `Invoke-Expression` installation commands. 2. Direct users to an authenticated operating-system package manager or a version-pinned official release artifact. 3. If manual installation is required, download the installer to a local file without executing it: - Use an explicitly pinned release URL. - Publish a SHA-256 or stronger checksum through an independent trusted channel. - Verify a vendor cryptographic signature before execution. - Abort installation if any integrity or signature check fails. 4. Present the verified installer and its intended effects to the user, then require explicit approval before execution. 5. Run installation with the least-privileged account possible and avoid requesting administrator or root privileges unless a documented component strictly requires them. 6. Keep installation separate from normal connector execution so a failed read-only SmartRecruiters request cannot automatically lead to remote code execution. 7. Document the files, permissions, and system changes made by the installer and provide removal instructions.
