T08 · Insecure Dependencies
- Location
README.md:392- Finding
Unpinned npm Package Download and Execution via npx
- Content
View full analysis
tailwind.theme.json # Export to W3C DTCG npx @google/design.md export --format dtcg DESIGN.md > tokens.json ``` The integration guide repeats the same unsafe dependency-resolution pattern: ```bash npx @google/design.md lint DESIGN.md npx @google/design.md export --format tailwind DESIGN.md > tailwind.theme.json npx @google/design.md export --format dtcg DESIGN.md > tokens.json ``` ### Technical Analysis The documented commands invoke an npm package without specifying an exact audited version. Depending on local npm configuration and whether the package is already installed, `npx` can retrieve the current package release from the npm registry and execute it immediately. This makes the effective executable payload mutable after the Skill has been reviewed. The behavior is not inherently malicious, but it creates a supply-chain trust boundary that is not disclosed or constrained through an exact version, lockfile, integrity metadata, offline execution, or sandbox. A compromised package release, registry account, dependency, or package installation hook could execute arbitrary code under the identity of the user following the documentation. The validation and token-export functionality does not require unrestricted execution of a mutable remote dependency, so the instructions exceed minimum safe privilege. ### Attack Path 1. An attacker compromises ...[truncated 1272 chars]- Remediation
View remediation
