T08 · Insecure Dependencies
- Location
SKILL.md:31- Finding
Unpinned Third-Party Packages and Mutable Installation Sources
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 31–41 and 124–128
Vulnerability Type: Unpinned and unreviewed third-party dependency installation
Risk Level: MediumVulnerable Code
SKILL.md, lines 31–41:bash neta-cli --version 0.8.0bash npm i @talesofai/neta-skills@latest -gbash pnpm add -g @talesofai/neta-skills@latestSKILL.md, lines 124–128:bash npx skills add talesofai/neta-skills/skills/neta-creativeTechnical Analysis
The Skill directs users or agents to install third-party software using the mutable
@latestpackage tag and an unpinned repository reference. Although the document displays CLI version0.8.0, the installation commands do not enforce that version.Package installation can execute lifecycle scripts and install executable code that is absent from the audited project. Consequently, the effective behavior cannot be verified from
SKILL.md. Future package releases, repository changes, or compromised transitive dependencies could introduce arbitrary behavior after this audit.Global installation increases exposure by placing third-party executables in shared command locations. The Skill also requires a
NETA_TOKENenvironment variable. While no direct credential exfiltration is present in the reviewed file, subsequently executed dependency code may be able to read that token and other data accessible to the invoking process.Attack Path
- An attacker compromises the package publisher account, source repository, release pipeline, or a transitive dependency.
- The attacker publishes malicious code under the
latestpackage version or modifies the unpinned repository content. - A user or agent follows the documented global
npm/pnpminstallation command or invokes thenpx skills addworkflow. - The package manager retrieves the attacker-controlled version because no immutable version, commit, lockfil ...[truncated 989 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace
@latestwith an exact, reviewed version, such as@talesofai/neta-skills@0.8.0, after independently verifying that release. - Pin repository-based installations to an audited immutable commit hash rather than a branch or mutable repository path.
- Publish and verify package integrity hashes or signed provenance before installation.
- Avoid global installation. Use a project-local dependency with a lockfile and execute it from an isolated environment.
- Disable package lifecycle scripts during installation where operationally possible, then explicitly review and authorize any required scripts.
- Run the CLI with least privilege in a sandbox or container with restricted filesystem and network access.
- Provide
NETA_TOKENonly to commands that require it. Use a narrowly scoped, short-lived token and ensure it is not exposed to installation processes. - Document the expected API domains and restrict outbound network access to those destinations.
- Add dependency scanning, release review, and automated verification of transitive dependencies to the maintenance process.
- Audit the actual CLI and referenced
neta-creativeSkill before recommending their execution.
- Replace
