T08 · Insecure Dependencies
- Location
skill.md:312- Finding
Unpinned Third-Party Package Installation Creates Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
skill.md, lines 312-314
Vulnerability Type: Unpinned npm dependency installation
Risk Level: MediumComplete Code Snippet:
bash npm install @clawmail/clientTechnical Analysis
The Skill instructs users to install
@clawmail/clientwithout specifying an exact version, lockfile, or integrity digest. Consequently, the installed artifact depends on the package registry state at installation time rather than the version reviewed alongside this Skill.npm packages may define lifecycle scripts that execute during installation. If the package publisher, registry account, or release process is compromised, a subsequently published malicious version could run code with the privileges of the user performing the installation. The audit found no evidence that the currently referenced package is malicious; the vulnerability is the absence of controls ensuring that users receive a reviewed and immutable version.
Attack Path
- An attacker compromises the npm publisher account, package release pipeline, or another component of the package distribution channel.
- The attacker publishes a malicious release under the legitimate
@clawmail/clientpackage name. - A user or agent follows the Skill documentation and runs
npm install @clawmail/client. - npm resolves the current release instead of a previously reviewed version.
- Malicious package code or an installation lifecycle script executes under the installing user's account.
- The payload may access files, environment variables, project data, or credentials available to that account and may establish network communication.
Impact Assessment
Successful exploitation could provide arbitrary code execution with the privileges of the user running npm. The accessible scope could include the current project, user-readable files, environment variables, developer credentials, and ClawMail credentials stored ...[truncated 212 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the client to an exact reviewed version, for example
npm install --save-exact @clawmail/client@X.Y.Z. - Distribute and maintain a lockfile so transitive dependencies are also resolved reproducibly.
- Publish package provenance and integrity information and explain how users can verify it.
- Use npm provenance attestations and a protected, reviewed release pipeline.
- Recommend
npm install --ignore-scriptswhen the package does not require lifecycle scripts. - Regularly scan the pinned package and its transitive dependency tree for known vulnerabilities and unexpected ownership or release changes.
- Require explicit review before updating the documented package version.
- Pin the client to an exact reviewed version, for example
