T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:27
- Finding
- Unpinned Package Execution Through npx## Vulnerability Details **File Location**: `SKILL.md`, line 27 **Vulnerability Type**: Unpinned third-party dependency execution **Risk Level**: Medium **Vulnerable Code**: ```markdown > **[SEO & GEO Skills Library](https://skills.sh/aaron-he-zhu/seo-geo-claude-skills)** · 20 skills for SEO + GEO · Install all: `npx skills add aaron-he-zhu/seo-geo-claude-skills` ``` ### Technical Analysis The documented installation command invokes `npx skills` without specifying a reviewed package version or integrity value. When the command is executed, npm may resolve and run the package version currently available from the configured registry. The effective executable can therefore change after this skill has been reviewed. This creates a supply-chain risk because execution is delegated to a mutable third-party package. If the package, publisher account, registry resolution, or a transitive dependency is compromised, attacker-controlled JavaScript may run through the package CLI or npm lifecycle behavior. The repository itself does not contain an embedded malicious payload; exploitation depends on compromise or malicious alteration of the external dependency. ### Attack Path 1. An attacker compromises the package publisher, registry resolution path, or a dependency used by the `skills` package. 2. The attacker publishes or causes resolution of a malicious package version. 3. A user follows the installation instruction and runs: ```bash npx skills add aaron-he-zhu/seo-geo-claude-skills ``` 4. `npx` resolves the mutable package version and executes its CLI or applicable lifecycle code. 5. The malicious code runs with the permissions and environment access of the user who invoked the command. ### Impact Assessment Successful exploitation could provide code execution with the invoking user's privileges. Depending on the local environment and available permissions, the malicious package could read or modify user-acc ...[truncated 279 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the CLI to a specifically reviewed version, for example: ```bash npx --yes skills@<reviewed-version> add aaron-he-zhu/seo-geo-claude-skills ``` 2. Verify and document the official package name, publisher, registry, and expected package provenance. 3. Use a lockfile and npm integrity metadata where the installation workflow permits it. 4. Review the pinned package, its lifecycle scripts, and its transitive dependencies before recommending execution. 5. Run installation with a non-privileged account and avoid `sudo` or administrator execution. 6. In automated environments, restrict filesystem permissions, network access, environment secrets, and package lifecycle scripts according to operational requirements. 7. Establish a controlled process for testing and approving dependency version updates rather than automatically executing the latest available release.
