T08 · Insecure Dependencies
- Location
README.md:29- Finding
Unpinned installer and mutable remote Skill source
- Content
View full analysis
Vulnerability Details
File Location:
README.md:29
Vulnerability Type: Unpinned external package execution and mutable source retrieval
Risk Level: HighVulnerable Code
bash npx add https://github.com/wpank/ai/tree/main/skills/backend/monorepoTechnical Analysis
This installation command invokes
npxwithout pinning theaddpackage to an exact, reviewed version. It also retrieves the Skill from a mutable GitHub branch rather than an immutable commit or release. The effective installer and installed content can therefore change after this audit without any modification to the audited files.Although external retrieval is necessary for installation, executing an unresolved package and trusting a mutable branch exceeds the minimum privilege and trust required. The behavior creates a supply-chain boundary in which upstream registry or repository changes can introduce code that runs with the installing user's privileges.
Attack Path
- An attacker compromises the package resolved by
npx add, its publisher account, or the referenced GitHub repository. - The attacker publishes a malicious package version or modifies content on the mutable
mainbranch. - A user follows the documented installation command.
npxretrieves and executes the currently resolved installer, which retrieves the mutable repository content.- Malicious installation logic can access files, environment variables, credentials, and network resources available to the invoking user.
Impact Assessment
Successful exploitation can provide arbitrary code execution under the installing user's account. The accessible scope may include project source code, user-owned files, developer credentials, package-manager tokens, SSH configuration, and other environment secrets. It does not inherently grant administrative privileges unless the command is run by an administrator or in an equivalently privileged environment.
- An attacker compromises the package resolved by
- Remediation
View remediation
Remediation Suggestions
- Replace the ambiguous
npx addinvocation with an explicitly identified installer pinned to an exact reviewed version. - Reference an immutable Git commit or signed release instead of the mutable
mainbranch. - Publish and verify a checksum or signed provenance statement for the Skill artifact.
- Prefer a non-executing download and manual-copy procedure when installer execution is unnecessary.
- Document that installation must not be performed with elevated privileges.
- Use dependency review and controlled update automation before changing the pinned installer or source revision.
- Replace the ambiguous
