T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:82- Finding
Unverified Remote Installation Scripts Executed Directly by Shell Interpreters
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 82–90
Vulnerability Type: Remote payload retrieval and execution
Risk Level: CriticalVulnerable Code
bash - **`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 installation instructions retrieve mutable content from remote OOMOL endpoints and immediately pass it to
bashor PowerShell for execution. The scripts are not included in the audited project, pinned to an immutable release, checked against an expected digest, or required to pass cryptographic signature verification.HTTPS protects the connection in transit under normal conditions, but it does not make the remotely hosted payload immutable or independently verifiable. A compromised hosting account, distribution service, DNS path, certificate infrastructure, or legitimate but unsafe update to either script could alter the code executed after this Skill has been reviewed.
Installing a prerequisite is ancillary to the declared IP lookup functionality and requires substantially broader privileges than submitting lookup requests. The document limits this procedure to a first-time fallback after an
oo: command not founderror, which reduces exposure but does not address the integrity risk. The PowerShell instruction has the same vulnerability as the Unix instruction becauseiexevaluates the downloaded response directly.Attack Path
- The user attempts to use the Skill on a system where the
ooCLI is unavailable. - The missing-command error causes the documented first-time installation fallback to be used.
- An attacker compromises or otherwise gains control over the content returned by `cli.oomol. ...[truncated 1446 chars]
- The user attempts to use the Skill on a system where the
- Remediation
View remediation
Remediation Suggestions
- Remove both direct network-to-interpreter pipelines. Download installation artifacts to disk without executing them automatically.
- Use a trusted platform package manager or a release artifact pinned to an explicit, immutable CLI version.
- Publish expected SHA-256 or stronger digests through a separately protected channel and verify the downloaded artifact before execution.
- Prefer signed releases and verify the signature against a pinned, documented publisher key.
- Fail closed if any checksum, signature, version, or publisher verification fails.
- Present the verified file and its source to the user and require explicit approval before running it.
- Perform installation with the least-privileged account possible and avoid administrative elevation unless a clearly identified operation requires it.
- Keep prerequisite installation outside normal Skill execution. The Skill should report that the CLI is missing rather than autonomously installing it.
- If scripts remain the distribution format, vendor a reviewed version in a trusted release, pin its version and digest, and document all filesystem, network, and privilege effects before execution.
- Apply equivalent controls to both the Unix shell and Windows PowerShell installation paths.
