T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:80
- Finding
- Unpinned External Installer and Mutable Remote Skill Source## Vulnerability Details **File Location**: `SKILL.md`, lines 80–84 **Vulnerability Type**: Supply-chain risk caused by unpinned external dependencies and mutable remote sources **Risk Level**: Medium ### Vulnerable Code ```bash # One-command installation using the skills CLI npx skills add zhaoxinghua09-cell/agent-skills -g # Alternatively, clone and copy the skill manually git clone https://github.com/zhaoxinghua09-cell/agent-skills.git cp -r agent-skills/skills/text-replace ~/.workbuddy/skills/ ``` ### Technical Analysis The installation instructions invoke `npx skills` without specifying a reviewed package version or verifying package integrity. Depending on the local npm environment, `npx` may retrieve and execute the currently published version of the `skills` package. The effective installer can therefore differ from the component examined during this audit. The alternative installation method clones the mutable default branch of a remote Git repository. It does not check out a fixed commit or signed release and does not validate a checksum before copying files into a trusted Agent skill directory. Consequently, the installed content may differ from this audited artifact. This is classified as an insecure dependency and supply-chain issue rather than evidence that the currently bundled script is malicious. The reviewed `scripts/text_replace.py` contains no remote retrieval or malicious payload. ### Attack Path 1. An attacker compromises the relevant npm package, publisher account, Git repository, maintainer account, or upstream release process. 2. The attacker publishes or commits a modified installer, skill instruction file, or executable script. 3. A user follows the documented unpinned `npx` or `git clone` installation procedure. 4. The installation retrieves content that was not included in or validated by this audit. 5. The package installer may execute attacker-controlled code during installation, ...[truncated 898 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the npm CLI package to an explicitly reviewed version rather than invoking an unspecified current release: ```bash npx --yes skills@<reviewed-version> add zhaoxinghua09-cell/agent-skills@<reviewed-version-or-commit> -g ``` 2. Publish and verify the expected npm integrity digest or SHA-256 checksum before executing downloaded tooling. 3. Replace the mutable Git clone procedure with a checkout of a reviewed commit: ```bash git clone https://github.com/zhaoxinghua09-cell/agent-skills.git cd agent-skills git checkout --detach <reviewed-full-commit-hash> ``` 4. Prefer signed release tags and require successful signature verification before installation. 5. Publish checksums for release archives and instruct users to compare them before copying skill files. 6. Avoid global installation unless operationally necessary. Prefer a project-scoped or otherwise isolated installation with least-privilege permissions. 7. Review the retrieved tree after verification and before placing it in a trusted Agent skill directory.
