T08 · Insecure Dependencies
- Location
SKILL.md:6- Finding
Unpinned Third-Party CLI Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 6
Vulnerability Type: Unpinned npm package dependency
Risk Level: MediumVulnerable Code
json metadata: {"version":"1.7.0","author":"postwallapp","license":"MIT","homepage":"https://postwallapp.com","repository":"https://github.com/postwallapp/postwall","openclaw":{"requires":{"bins":["postwall"],"env":["POSTWALL_API_KEY"]},"primaryEnv":"POSTWALL_API_KEY","install":[{"id":"npm","kind":"node","package":"postwall","bins":["postwall"],"label":"Install PostWall CLI (npm)"}]}}Technical Analysis
The installation metadata directs the environment to install the mutable npm package
postwallwithout an exact version or integrity digest. Although the skill metadata itself declares version1.7.0, that value does not constrain the version resolved by npm.Because the CLI implementation is not included in the audited project, its behavior could not be verified. Installation may execute npm lifecycle scripts, and subsequent CLI operations expose the installed package to the
POSTWALL_API_KEYand sensitive email data. A compromised or unexpectedly changed package release could therefore introduce arbitrary local code under the identity running the skill.Attack Path
- An attacker compromises the package publisher account, registry artifact, or another part of the package release process.
- The attacker publishes a malicious version under the mutable
postwallpackage name. - A user installs the skill, and dependency resolution retrieves that malicious release because no exact version or integrity hash is required.
- Malicious code executes through an installation lifecycle script or when the
postwallbinary is invoked. - The package reads the available
POSTWALL_API_KEY, CLI arguments, configuration, or email and draft content and then exfiltrates data or performs arbitrary actions with the process user's privileges.
Impact Assessm
...[truncated 572 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
postwallto a reviewed, exact package version rather than resolving the latest compatible release. - Require and verify a cryptographic integrity digest for the expected package artifact.
- Commit and enforce a lockfile where the installation framework supports one.
- Disable npm lifecycle scripts during installation where operationally practical, or explicitly review every lifecycle script in the complete dependency tree.
- Publish auditable CLI source and reproducible-build information corresponding to the pinned artifact.
- Generate a software bill of materials and continuously scan direct and transitive dependencies.
- Run the CLI in a sandbox with minimum filesystem and network privileges.
- Scope the API key to only the operations required by this skill, protect its local configuration with restrictive file permissions, and support rapid credential rotation.
- Pin
