T08 · Insecure Dependencies
- Location
README.md:17- Finding
Skill Installation from an Unpinned Mutable GitHub Branch
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 17-18
Vulnerability Type: Supply-chain risk caused by an unpinned remote Skill source
Risk Level: MediumVulnerable Code
bash # From GitHub openclaw skill install https://github.com/bernylinville/my-skills/blob/main/skills/wechat-article-reader/SKILL.mdTechnical Analysis
The documented installation command retrieves the Skill definition from the mutable
mainbranch of a personal GitHub repository. It does not pin the source to a reviewed commit hash, immutable release artifact, checksum, or cryptographically verified signature.Consequently, the content installed by a user can differ from the version covered by this audit. Anyone who gains write access to the repository or compromises the maintainer account could replace
SKILL.mdwith malicious Agent instructions. The affected content would then be trusted when users follow the documented installation procedure.The audited files do not themselves contain executable malicious code. The risk arises from the mutable installation source and its ability to deliver different Skill instructions after review.
Attack Path
- An attacker compromises the GitHub repository, its maintainer account, or another mechanism capable of changing the
mainbranch. - The attacker modifies the remotely hosted
SKILL.mdto contain malicious or misleading Agent instructions. - A user follows the installation command in
README.md. - OpenClaw retrieves the current remote file rather than the version examined during this audit.
- When the installed Skill is invoked, the Agent follows the substituted instructions and may use available browser, file, network, or other tools within the permissions granted to the Agent.
Impact Assessment
Exploitation can replace the intended article-reading behavior with attacker-controlled Skill instructions. The resulting privileges are limited by the t ...[truncated 448 chars]
- An attacker compromises the GitHub repository, its maintainer account, or another mechanism capable of changing the
- Remediation
View remediation
Remediation Suggestions
- Replace the mutable
mainbranch URL with a URL pinned to a specific reviewed Git commit. - Prefer a signed, versioned release artifact or a trusted Skill registry with provenance verification.
- Publish a SHA-256 checksum for the reviewed
SKILL.mdand require users or installation tooling to verify it before installation. - Enable repository protections, mandatory review, signed commits or tags, and strong multi-factor authentication for maintainers.
- Document a controlled upgrade process so that each new Skill version is reviewed before users install it.
- If the installer supports integrity locks or manifests, record both the immutable source revision and expected content digest.
- Replace the mutable
