T08 · Insecure Dependencies
- Location
README.md:19- Finding
Unpinned Third-Party Package Execution During Installation
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 19 and 205
Vulnerability Type: Unpinned executable dependency
Risk Level: MediumVulnerable Code
The following installation command appears at both identified locations:
bash npx skills add HogoZhang/ai-interview-coachTechnical Analysis
The documented installation procedure invokes
npxwithout pinning theskillspackage to a reviewed version or verifying its integrity. If the package is not already available locally,npxmay retrieve it from the configured npm registry and execute its current published version.Consequently, the code executed during installation is not immutable and may differ from the code present when this project was audited. A compromised maintainer account, malicious package update, registry compromise, or dependency takeover could replace the resolved package with attacker-controlled code.
The repository also documents a manual installation method, but the unsafe
npxcommand is presented as the recommended one-click installation method.Attack Path
- An attacker compromises the publishing account, package, registry path, or upstream dependency associated with the unpinned
skillspackage. - The attacker publishes a malicious version containing install-time or runtime code.
- A user follows the recommended command:
bash npx skills add HogoZhang/ai-interview-coach npxresolves and downloads the attacker-controlled package version.- The package executes with the privileges of the user running the command.
- The malicious package can access or modify resources available to that user.
Impact Assessment
Successful exploitation could permit arbitrary code execution under the installing user's account. The accessible scope may include:
- Reading or modifying user-accessible files.
- Accessing environment variables and credentials available to the process.
...[truncated 457 chars]
- An attacker compromises the publishing account, package, registry path, or upstream dependency associated with the unpinned
- Remediation
View remediation
Remediation Suggestions
- Pin the installer to a specifically audited version instead of resolving the latest release:
bash npx skills@<reviewed-version> add HogoZhang/ai-interview-coach - Pin the installed Skill to an immutable commit or release identifier where supported.
- Publish and verify package integrity hashes or signed release provenance.
- Document the expected npm registry and advise users to verify that their registry configuration has not been redirected.
- Prefer the documented manual installation procedure when a trustworthy pinned installer cannot be provided.
- Audit the pinned installer package and its transitive dependencies before recommending it.
- Apply the same corrected command to both occurrences in
README.md, including line 205.
- Pin the installer to a specifically audited version instead of resolving the latest release:
