T08 · Insecure Dependencies
- Location
README.md:31- Finding
Unpinned Skill Installation from a Mutable Personal Repository
- Content
View full analysis
Vulnerability Details
File Location:
README.md:31andREADME.md:55
Vulnerability Type: Supply-chain risk from an unpinned remote Skill package
Risk Level: MediumVulnerable Code
sh curl -L -o cocktail-craft.zip https://github.com/makishimatouri/COCKTAIL/archive/refs/heads/main.zipsh git clone https://github.com/makishimatouri/COCKTAIL.git ~/.openclaw/workspace/skills/cocktail-craftTechnical Analysis
Both documented installation methods retrieve the Skill from the mutable
mainbranch of a personal GitHub repository. Neither method pins a reviewed commit or version, verifies a cryptographic checksum, nor validates a release signature.The downloaded archive is not directly executed, and the repository contains no scripts or executable code in the audited version. Therefore, this is not a confirmed direct remote-code-execution mechanism. Nevertheless, installing remotely retrieved content into an Agent's Skill directory creates a supply-chain trust boundary: the content installed later may differ from the content reviewed during this audit.
A malicious repository update could replace
SKILL.md, add scripts, or introduce hostile instructions. Once installed in an Agent Skill directory, such content may be loaded in later sessions and receive access to whatever tools and permissions the host Agent grants to installed Skills.Attack Path
- An attacker compromises the repository owner account, repository credentials, or another mechanism capable of modifying the
mainbranch. - The attacker adds malicious Skill instructions or executable components to the repository.
- A user sends the README's installation prompt to an Agent, or manually runs one of the documented commands.
- The command retrieves the attacker's current
mainbranch without verifying that it matches an audited revision. - The retrieved content is moved or cloned into a persistent Agent Skill direc ...[truncated 851 chars]
- An attacker compromises the repository owner account, repository credentials, or another mechanism capable of modifying the
- Remediation
View remediation
Remediation Suggestions
- Pin installation instructions to a specific reviewed commit hash rather than
main. - Prefer versioned, immutable release archives over branch archives.
- Publish a SHA-256 checksum through a trusted channel and require verification before extraction or installation.
- If releases are signed, verify the maintainer's signature and document the expected signing identity.
- Clone without automatically activating the Skill, inspect the checked-out revision, and only then move it into the active Skill directory.
- Extract archives into a newly created temporary directory and verify that paths remain within that directory before moving files.
- Document the exact expected file inventory and reject unexpected scripts, binaries, symbolic links, or additional instruction files.
- For automated installers, enforce an allowlisted repository origin and immutable revision, then display the resolved commit before activation.
- Pin installation instructions to a specific reviewed commit hash rather than
