T08 · Insecure Dependencies
- Location
SKILL.md:9- Finding
Unpinned Third-Party Package Download and Execution
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 9–11
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: Mediummarkdown ## Install SkillLens - One-off run: `npx skilllens scan` (or `pnpm dlx skilllens scan`) - Global install: `pnpm add -g skilllens`Technical Analysis
The installation instructions recommend
npx skilllens scanandpnpm dlx skilllens scanwithout specifying a reviewed package version, integrity hash, lockfile, or verified source repository. These commands may retrieve the latest availableskilllenspackage from the configured package registry and execute it immediately. Consequently, the code that runs can differ from the code reviewed when this Skill was published.The global installation alternative also installs the package into a persistent user- or system-level package location. This increases the lifetime and blast radius of a compromised dependency compared with a version-pinned, project-local installation.
The external CLI is not strictly required for the declared auditing functionality because
SKILL.mdprovides a manual fallback. The unpinned execution behavior therefore exceeds the minimum dependency exposure necessary to conduct an audit.The pre-scan warnings concerning
curl | bashand transmission of sensitive information are not confirmed vulnerabilities. Those strings appear only as examples of patterns an auditor should detect inSKILL.mdlines 24 and 54; the Skill does not provide a remote shell URL, execute such a pipeline, or define a data-exfiltration endpoint.Attack Path
- An attacker compromises the
skilllensregistry package, its publisher account, or an upstream dependency, or causes resolution through an untrusted registry configuration. - A user or Agent follows the documented
npx skilllens scanorpnpm dlx skilllens scaninstruction. - The package manager resolves and downloads an unpinned package ...[truncated 1234 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to a specifically reviewed version, for example
npx skilllens@<reviewed-version> scan, rather than resolving the latest release. - Publish the official package registry namespace and source repository so users can verify package provenance and avoid similarly named or substituted packages.
- Use a project-local dependency recorded in a lockfile with integrity metadata instead of downloading and executing a package ad hoc.
- Verify package signatures, provenance attestations, and registry integrity information where supported.
- Review package lifecycle scripts and the dependency tree before installation or execution.
- Avoid recommending global installation by default. If it remains documented, explain its persistence and provide explicit removal and upgrade procedures.
- Run the CLI with an unprivileged account and restrict its filesystem and network access to the minimum required scan scope.
- Make the existing manual review workflow the default or clearly documented safe alternative when dependency provenance cannot be verified.
- Pin the CLI to a specifically reviewed version, for example
