T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:24
- Finding
- Mutable Third-Party Package Installed Globally## Vulnerability Details **File Location**: `SKILL.md`, lines 24–30 **Vulnerability Type**: Unpinned global dependency installation **Risk Level**: Medium ```bash npm i @talesofai/neta-skills@latest -g ``` ```bash pnpm add -g @talesofai/neta-skills@latest ``` ### Technical Analysis The Skill instructs users to install the mutable `latest` release of `@talesofai/neta-skills` globally. The reviewed project provides no lockfile, integrity hash, vendored implementation, or source code from which the installed package's behavior can be verified. Because the `latest` tag can resolve to a different package version over time, the effective executable payload may change after this Skill has been reviewed. If the package publisher account, release process, or registry entry is compromised, a malicious release could execute code through package lifecycle scripts during installation or through the installed `neta-cli` executable. Global installation increases exposure by placing the executable in a shared command path rather than isolating it to the project. The document does not instruct users to use `sudo`, so administrative execution is not established; nevertheless, the package receives the permissions of the account performing the installation. The Skill also requires a `NETA_TOKEN` for subsequent CLI use. Network authentication is necessary for its declared API functionality, and the reviewed file does not prove unauthorized exfiltration. However, an untrusted replacement CLI could potentially access this environment variable when invoked. ### Attack Path 1. An attacker compromises the package publisher account, package registry entry, or upstream release pipeline. 2. The attacker publishes a malicious version and assigns it to the mutable `latest` distribution tag. 3. A user follows the documented `npm` or `pnpm` global installation command. 4. The package manager downloads the attacker-controlled release without a reviewed version pin or project lockfile. ...[truncated 1117 chars]
- Remediation
- ## Remediation Suggestions 1. Replace `@latest` with an exact, reviewed package version, such as `@talesofai/neta-skills@0.8.0`, after verifying that version corresponds to the expected CLI. 2. Prefer a project-local dependency over global installation to reduce command-path and cross-project exposure. 3. Commit an appropriate lockfile and verify registry integrity metadata so installations resolve to a known artifact. 4. Document the official package registry, source repository, publisher identity, and expected API endpoints. 5. Verify package provenance or signatures where supported by the package registry. 6. Disable package lifecycle scripts during installation where operationally feasible, and explicitly review any scripts required by the dependency before enabling them. 7. Run the CLI as a non-privileged user in a restricted environment with access only to required files and network destinations. 8. Scope `NETA_TOKEN` to the minimum API permissions, avoid persistent global exposure of the variable, and rotate it if a package compromise is suspected.
