T08 · Insecure Dependencies
- Location
SKILL.md:9- Finding
Unpinned and Unnecessary Third-Party Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 9-15
Vulnerability Type: Unpinned npm dependency and excessive unused prerequisites
Risk Level: MediumVulnerable Code:
yaml requires: bins: ["curl", "jq", "git"] env: ["BRAVE_API_KEY"] install: - id: npm kind: node package: axios bins: ["axios"]Technical Analysis
The skill is instruction-only and contains no implementation that uses Axios. Nevertheless, its installation metadata directs the host to install
axioswithout an exact version or integrity constraint. This causes the resolved package and transitive dependency graph to vary over time, unnecessarily exposing installation environments to npm supply-chain and package-lifecycle risks.The metadata also declares an
axiosexecutable even though Axios is ordinarily consumed as a JavaScript library. In addition, the requestedcurl,jq,git, andBRAVE_API_KEYcapabilities are not used by any documented command or implementation in the reviewed package. No instruction was found that reads or transmits the API key, but requesting unused tools and credentials violates least-functionality principles and broadens the environment available to future or compromised dependencies.Exploitation depends on malicious or compromised content entering the package or its dependency graph. The reviewed files do not themselves contain malicious code, remote payload execution instructions, or credential-exfiltration logic.
Attack Path
- A user installs or activates the skill.
- The host processes the npm installation metadata in
SKILL.md. - Because no exact Axios version or integrity hash is specified, the package manager resolves a currently available release and its transitive dependencies.
- If the resolved package or a transitive dependency is compromised or unexpectedly changed, package installation behavior may run in the host environment.
- Su ...[truncated 807 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the Axios installation block because no reviewed project code uses Axios.
- Remove the
curl,jq,git, andBRAVE_API_KEYrequirements unless concrete skill functionality requires them. - If Axios is later required, pin an exact reviewed version rather than using an unconstrained package reference.
- Maintain a lockfile with integrity hashes and review the complete transitive dependency graph.
- Disable or restrict dependency lifecycle scripts where the deployment environment permits.
- Do not declare Axios as a CLI binary unless a specific, verified executable is actually required.
- Provide sensitive credentials only at the point of use and only to the process that requires them.
