T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:172
- Finding
- Unpinned Executable Installation Creates Supply-Chain Risk<. ``` ### Technical Analysis The documented installation command invokes an `npx`-provided CLI and identifies the Skill repository by a mutable owner/repository reference. Neither the CLI package version nor the repository revision is pinned to a reviewed version or commit. Consequently, the content installed by this command can differ from the content originally audited. Compromise of the CLI package, its dependency chain, the upstream repository, or its maintainer account could introduce modified instructions or executable content into a subsequent installation. The audited project itself does not contain a malicious payload, and the command is documentation rather than an automatically executed installation hook. The risk arises when an operator follows the documented command without independently pinning and verifying the fetched components. ### Attack Path 1. An attacker compromises the package used by `npx`, one of its transitive dependencies, or the referenced upstream repository. 2. The attacker publishes a malicious package version or changes the repository content while retaining the same mutable package/repository name. 3. An operator follows the documented `npx skills add Lightprotocol/skills` command. 4. `npx` resolves the current package version, and the installer retrieves the current upstream Skill content. 5. The malicious installer or modified Skill content runs or is activated with the operator's permissions. ### Impact Assessment Successful exploitation could execute supply-chain code with the privileges of the user running the installation. Depending on that user's environment, this could expose local files, environment varia ...[truncated 266 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Pin the installation CLI to a reviewed version, for example by using an explicit package version rather than allowing `npx` to resolve the latest release. - Pin the Skill repository to an immutable commit hash or cryptographically signed release tag. - Publish and verify checksums or signatures for downloaded Skill content. - Use a lockfile and integrity-protected dependency installation where supported. - Download and inspect third-party content before enabling it in an Agent environment. - Run installation in a sandbox with no wallet key, RPC credential, or unrelated filesystem access. - Document the exact reviewed package version and repository commit in `SKILL.md`. ]]>
