T08 · Insecure Dependencies
- Location
SKILL.md:12- Finding
Unpinned Remote Installation Chain
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 12–14
Vulnerability Type: Unpinned third-party installer and mutable remote repository
Risk Level: MediumVulnerable Code Snippet:
markdown ## Installation ```bash npx skills add PaodingAI/skillstext ### Technical Analysis The documented installation command uses `npx` without pinning the `skills` package to a reviewed version or integrity hash. Depending on the local npm environment, `npx` can retrieve and execute the currently published version of that package. The command also identifies `PaodingAI/skills` without an immutable commit, release identifier, or verified digest. Consequently, the code installed or executed in the future may differ from the code reviewed in this audit. Compromise of the npm package, publisher account, repository account, or mutable upstream content could convert this installation path into a supply-chain execution vector. This finding concerns the documented installation chain. The audited runtime script itself does not dynamically retrieve executable code. ### Attack Path 1. An attacker compromises the npm package, its publisher account, the referenced repository, or another relevant upstream distribution channel. 2. The attacker publishes or substitutes a malicious package version or repository revision. 3. A user follows the documented `npx skills add PaodingAI/skills` installation command. 4. `npx` retrieves and executes the unpinned installer, which then resolves mutable upstream skill content. 5. The attacker-controlled code executes with the privileges of the user performing the installation. ### Impact Assessment Successful exploitation could provide arbitrary code execution under the installing user's account. The resulting scope may include access to files readable or writable by that user, environment variables and credentials available to the process, agent configuration, and any extern ...[truncated 246 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsinstaller to an explicitly reviewed version rather than allowingnpxto resolve the latest available release. - Pin the
PaodingAI/skillssource to an immutable commit hash or cryptographically signed release. - Publish expected checksums or integrity metadata and verify them before installation or execution.
- Use npm lockfiles and integrity fields where applicable to ensure reproducible dependency resolution.
- Execute installation in a least-privileged, isolated environment without unrelated secrets.
- Document a controlled upgrade process requiring security review before changing pinned versions or commits.
- Where supported, use
npx --no-installwith a preinstalled, verified package to prevent implicit network retrieval during installation.
- Pin the
