T08 · Insecure Dependencies
- Location
SKILL.md:170- Finding
Unpinned Package and Repository Execution During Skill Setup
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 170-180
Vulnerability Type: Unpinned third-party package and mutable repository dependency
Risk Level: MediumVulnerable Code
markdown - AgentPMT account MCP/REST setup: ../agentpmt-account-mcp-rest-api-setup - ClawHub page: https://clawhub.ai/agentpmt/agentpmt-account-mcp-rest-api-setup - OpenClaw install: `openclaw skills install agentpmt-account-mcp-rest-api-setup` - skills.sh install: `npx skills add AgentPMT/agent-skills --skill agentpmt-account-mcp-rest-api-setup` skills.sh install script: ```bash npx skills add AgentPMT/agent-skills --skill what-is-agentpmt npx skills add AgentPMT/agent-skills --skill agentpmt-account-mcp-rest-api-setuptext Equivalent unpinned commands also appear at `SKILL.md:82` and `SKILL.md:229-230`. ### Technical Analysis The documented setup process invokes the unversioned `skills` npm package through `npx` and installs content from `AgentPMT/agent-skills` without specifying an immutable commit, release, checksum, or signature. Consequently, the code and Skill instructions obtained during a future installation may differ from the content that was originally reviewed. Because `npx` can download and execute package content, compromise of the npm package, its dependency graph, the referenced repository, or the associated publishing accounts could turn this setup step into a code-execution or instruction-injection channel. This is a supply-chain weakness rather than evidence that the currently reviewed files contain an active malicious payload. ### Attack Path 1. An attacker compromises the unversioned `skills` npm package, one of its transitive dependencies, the referenced `AgentPMT/agent-skills` repository, or a relevant publisher account. 2. The attacker publishes malicious package code or replaces the remotely retrieved Skill content. 3. A user or Agent follows the documented `npx skills add ...` setup command. 4. `npx` retrieves and ex ...[truncated 1029 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsnpm package to a specifically reviewed version rather than relying on the latest resolution:bash npx --yes skills@<reviewed-version> add AgentPMT/agent-skills --skill what-is-agentpmt - Pin
AgentPMT/agent-skillsto an immutable commit hash or cryptographically signed release if the installer supports repository revisions. - Publish and verify SHA-256 checksums or signatures for downloaded Skill artifacts before installation.
- Use a lockfile and integrity-protected package installation process for the installer and all transitive dependencies.
- Prefer a reviewed local installation artifact over executing mutable content directly from the network.
- Run installation in a sandbox or least-privilege environment without unnecessary secrets, production credentials, or writable sensitive directories.
- Document the expected package version, repository commit, checksums, publisher identity, and verification procedure in
SKILL.md. - Re-audit pinned installer code and installed Skill content whenever the pinned versions are updated.
- Pin the
