T08 · Insecure Dependencies
- Location
README.md:22- Finding
Unpinned Third-Party Installer and Mutable Remote Source
- Content
View full analysis
Vulnerability Details
File Location:
README.md:22-24
Vulnerability Type: Insecure third-party dependency and mutable supply-chain source
Risk Level: MediumComplete Code Snippet:
bash npx add https://github.com/wpank/ai/tree/main/skills/design-systems/theme-factoryTechnical Analysis
The documented installation command uses
npxto resolve and potentially execute the package namedadd. The package is not pinned to an exact version, so the code executed during installation may differ from the version reviewed during this audit.The command also references a path under a user-controlled GitHub repository without pinning it to an immutable commit SHA or signed release. The effective content obtained by the installation process can therefore change after review. This creates a supply-chain trust boundary involving both the npm-resolved installer and the mutable remote repository.
The reviewed project itself consists only of Markdown files and contains no embedded executable scripts. The risk arises when a user follows the installation instruction, not from normal theme-file processing.
Attack Path
- An attacker compromises the npm package resolved as
add, its maintainer account, or the referenced GitHub repository. - The attacker publishes a malicious package version or modifies content reachable through the mutable repository path.
- A user follows the documented
npx add ...installation command. npxdownloads and executes the unpinned installer with the user’s local privileges.- The compromised installer or source performs unauthorized actions or installs modified Skill content.
Exploitation depends on compromise or malicious modification of an external supply-chain component; no direct compromise path is present in the audited Markdown files themselves.
Impact Assessment
Malicious installation-time code could operate with the privileges of the user running ...[truncated 514 chars]
- An attacker compromises the npm package resolved as
- Remediation
View remediation
Remediation Suggestions
- Replace the ambiguous
npx addworkflow with a documented and verified installer package pinned to an exact version. - Pin the repository source to a reviewed commit SHA or a signed, immutable release rather than a mutable branch path.
- Publish checksum values for release archives and require checksum verification before installation.
- Prefer a transparent manual installation procedure that copies reviewed static files without executing third-party package code.
- If an installer remains necessary, document its provenance, inspect its dependency tree and lifecycle scripts, and use package-manager controls that restrict script execution where practical.
- Avoid recommending elevated privileges for installation and clearly state that the installer should run under a least-privileged user account.
- Replace the ambiguous
