T08 · Insecure Dependencies
- Location
SKILL.md:5- Finding
Unpinned Third-Party CLI Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 5–13
Vulnerability Type: Unpinned executable dependency
Risk Level: MediumVulnerable code:
yaml metadata: {"openclaw":{"emoji":"📄","homepage":"https://porteden.com","requires":{"bins":["porteden"]},"primaryEnv":"PE_API_KEY","envVars":[{"name":"PE_API_KEY","required":false,"description":"API key; if unset, credentials are read from the system keyring via `porteden auth login`"}],"install":[{"id":"brew","kind":"brew","formula":"porteden/tap/porteden","bins":["porteden"],"label":"Install porteden (brew)"},{"id":"go","kind":"go","module":"github.com/porteden/cli/cmd/porteden@latest","bins":["porteden"],"label":"Install porteden (go)"}]}}markdown If `porteden` is not installed: `brew install porteden/tap/porteden` (or `go install github.com/porteden/cli/cmd/porteden@latest`).Technical Analysis
The documented Go installation resolves
github.com/porteden/cli/cmd/porteden@latestat installation time instead of selecting a reviewed, immutable version or commit. Consequently, the executable installed by a user or agent may differ from the version assessed when this Skill was published. The Homebrew command also installs from a third-party tap without specifying a reviewed version or documenting an integrity check.This creates supply-chain exposure: compromise of the upstream repository, module release process, package-distribution account, or Homebrew tap could cause the installation instructions to retrieve and execute altered code. The CLI is particularly sensitive because it can consume
PE_API_KEY, access credentials stored in the system keyring, and perform Google Drive operations.Attack Path
- An attacker compromises an upstream release channel, repository, maintainer account, Go module version, or Homebrew tap used to distribute
porteden. - The attacker publishes a modified release that resolves as the latest available ...[truncated 927 chars]
- An attacker compromises an upstream release channel, repository, maintainer account, Go module version, or Homebrew tap used to distribute
- Remediation
View remediation
Remediation Suggestions
- Replace
@latestwith a specific, reviewed semantic version or immutable commit. - Pin the Homebrew installation to a reviewed release where supported, or provide a versioned release artifact instead of relying implicitly on the current tap state.
- Publish expected SHA-256 checksums or cryptographic signatures and require verification before installation.
- Document the expected package publisher, repository, signing identity, and release-verification process.
- Use automated dependency monitoring to review and deliberately update the pinned version.
- Run the CLI with least-privilege Google scopes and a restricted token so that a compromised dependency has limited access.
- Prefer reproducible builds and verify that distributed binaries correspond to reviewed source code.
- Replace
