T08 · Insecure Dependencies
- Location
README.md:23- Finding
Unpinned Third-Party Installer Execution
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 23-25
Vulnerability Type: Supply-chain risk from an unpinned executable package and mutable remote source
Risk Level: Mediumbash npx add https://github.com/wpank/ai/tree/main/skills/backend/service-layer-architectureTechnical Analysis
The installation command invokes
npx, which can download and execute the third-partyaddpackage when it is not already installed locally. No exact package version or integrity hash is specified. The Skill source is also obtained from a personal GitHub repository through the mutablemainbranch rather than an immutable commit or signed release.Consequently, the code and installation behavior executed by this command can change after the reviewed project version has been published. Compromise of the npm package, its maintainer account, the GitHub account, or the referenced branch could introduce attacker-controlled installation logic.
Attack Path
- An attacker compromises the npm package, its publisher account, the GitHub repository, or another relevant distribution component.
- The attacker publishes malicious installer behavior or modifies content available through the mutable
mainbranch. - A user follows the documented installation instructions and runs the
npx add ...command. npxretrieves and executes the unpinned package with the user's current privileges.- The malicious installer can access files, environment variables, credentials, and network resources available to that user.
Impact Assessment
Successful exploitation could result in arbitrary command execution under the privileges of the user performing the installation. The reachable scope may include project files, user-owned files, development credentials, environment variables, SSH configuration, package registry tokens, and accessible network services. If the command is run from a privileged account or CI/CD enviro ...[truncated 117 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the unversioned
npx addinvocation with a trusted installer pinned to an exact package version. - Pin the Skill source to a reviewed, immutable Git commit instead of the mutable
mainbranch. - Verify downloaded content with a published cryptographic checksum or signature before installation.
- Prefer documented manual installation that downloads reviewed files without executing an intermediary package.
- If an installer is necessary, document its source, exact version, expected integrity value, and required permissions.
- Run installation with least privilege in an isolated environment, and avoid exposing unnecessary credentials or sensitive environment variables.
- Replace the unversioned
