T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:16
- Finding
- Unpinned Third-Party Package Execution During Global Installation## Vulnerability Details **File Location**: `SKILL.md:16` **Vulnerability Type**: Supply-chain risk from an unpinned third-party installer **Risk Level**: Medium ### Vulnerable Code ```bash npx skills add nexscope-ai/eCommerce-Skills --skill brand-protection-walmart -g ``` ### Technical Analysis The documented installation procedure invokes the remotely resolved `skills` npm package through `npx` without specifying an exact package version or integrity hash. It then installs content from the mutable `nexscope-ai/eCommerce-Skills` source globally. Because neither dependency is pinned to an immutable, verified revision, the code executed or installed at audit time may differ from the code later received by users. An attacker who compromises the npm package, its maintainer account, or the referenced repository could introduce arbitrary installation-time behavior after this reviewed project has been published. The audited local Python scripts do not themselves perform remote retrieval or command execution. The risk arises specifically when a user follows the installation instruction. ### Attack Path 1. An attacker compromises the npm package, package-maintainer account, or referenced external repository. 2. The attacker publishes or commits a modified installer or skill payload. 3. A user follows the documented command without specifying a trusted version or commit. 4. `npx` resolves and executes the current remote package. 5. The installer retrieves mutable repository content and installs it globally. 6. Malicious package lifecycle code, installer logic, or installed skill content executes with the invoking user's privileges. ### Impact Assessment Successful exploitation could permit arbitrary code execution under the account running the installation command. Depending on that account's permissions and the installer's behavior, the attacker could access user-readable files, modify globally managed skill content, tamper with development configuration, or ...[truncated 289 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the npm package to a reviewed exact version rather than relying on the latest remotely resolved release. 2. Pin the external repository to an immutable commit hash or signed release tag. 3. Publish and verify cryptographic integrity information for downloaded artifacts. 4. Avoid global installation by default; prefer a project-local, least-privilege installation. 5. Review package lifecycle scripts and the complete transitive dependency tree before recommending execution. 6. Use lockfiles or an equivalent reproducible dependency manifest. 7. Require signed releases and protected maintainer accounts with multi-factor authentication. 8. Document a verification procedure that allows users to confirm the package version, repository revision, and checksums before installation.
