T08 · Insecure Dependencies
- Location
SKILL.md:8- Finding
Unnecessary Third-Party Package Installation in Placeholder Skill
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 8–13
Vulnerability Type: Unnecessary third-party dependency and supply-chain exposure
Risk Level: Mediumyaml requires: bins: [gsd] install: kind: node package: gsd-pi bins: [gsd]Technical Analysis
The project describes itself solely as a name-reservation placeholder that redirects users to the separate
gsd-orchestratorSkill. It contains no executable implementation and no command that uses the declaredgsdbinary. Despite this, its metadata directs the Skill manager to install the third-party Node packagegsd-piwhen the binary is unavailable.Installing an unnecessary package expands the trusted computing base and introduces avoidable npm supply-chain exposure. Depending on the package manager and installation configuration, package lifecycle scripts may execute code with the privileges of the user or service performing the installation. The package implementation is not included in this project and therefore could not be audited here.
There is no evidence in the reviewed file that
gsd-piis malicious. The vulnerability is the unnecessary and unaudited dependency installation, not a confirmed malicious payload.Attack Path
- A user or automated agent selects or resolves this placeholder Skill.
- The Skill manager evaluates the
requires.binsdeclaration and determines thatgsdis unavailable. - The installer retrieves and installs the declared
gsd-pipackage from the configured Node package registry. - Package code, including any enabled lifecycle scripts, may run under the installer process's privileges.
- If the dependency or its distribution channel is compromised, malicious package code could act within those privileges even though this placeholder Skill does not require the binary.
This attack path is conditional on automatic dependency installation, lifecycle-script behavior, and compromise ...[truncated 623 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the
requiresandinstallmetadata from this name-reservation placeholder because it does not execute or depend on thegsdbinary. - Retain only the clearly disclosed redirect instructing users to install
gsd-orchestrator. - If the dependency is genuinely required in a future implementation:
- Document the exact functionality that requires it.
- Pin an exact, reviewed package version rather than relying on an unbounded package resolution.
- Verify package provenance and integrity using registry-supported integrity controls or a trusted lockfile.
- Disable package lifecycle scripts where operationally possible.
- Perform installation using a minimally privileged account in an isolated environment.
- Review the package and its transitive dependencies before publication.
- Add a release check that rejects dependencies unused by any command or implementation contained in the Skill.
- Remove the
