T08 · Insecure Dependencies
- Location
SKILL.md:12- Finding
Unpinned Third-Party CLI Executes with Access to an API Secret
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 12-17 and 29-41
Vulnerability Type: Unpinned runtime dependency and supply-chain exposure
Risk Level: MediumVulnerable code:
yaml env: - name: SELLERSPRITE_SECRET_KEY description: "SellerSprite Open API secret key (get at https://open.sellersprite.com)" required: false note: "Can also be set via: bunx @teamclaw/sellersprite-cli config set secretKey <key>" packages: - "@teamclaw/sellersprite-cli"bash # Set API key export SELLERSPRITE_SECRET_KEY="your-secret-key" # Browse top categories bunx @teamclaw/sellersprite-cli market # Research products by keyword bunx @teamclaw/sellersprite-cli product --keyword "wireless earbuds" # Get ASIN details bunx @teamclaw/sellersprite-cli asin --asin B08N5WRWNW # Check remaining quota bunx @teamclaw/sellersprite-cli quotaTechnical Analysis
The Skill directs the agent to execute
@teamclaw/sellersprite-clithroughbunxwithout specifying an exact package version or integrity value. The repository contains neither that package's executable source nor a dependency lockfile. Consequently, the reviewed Skill does not establish which package release will execute or allow its behavior to be verified.The executed package is expected to have access to
SELLERSPRITE_SECRET_KEY. The documentation inreferences/api-endpoints.md, line 5, also states that the key is transmitted in asecret-keyHTTP header. Sending this credential to the legitimate SellerSprite API is necessary for the declared functionality. However, because the CLI implementation and concrete API base URL are absent, the audit cannot verify the destination, TLS handling, credential storage behavior, or whether the process accesses additional environment variables and files.This is a supply-chain vulnerability rather than evidence that the currently published dependency is malicious. A ...[truncated 1407 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
@teamclaw/sellersprite-clito an exact, reviewed version rather than resolving the latest release. - Commit a lockfile that records transitive dependency versions and package integrity hashes, and require immutable/frozen-lockfile installation.
- Vendor the CLI implementation into the audited package or otherwise include its source so its network destinations, secret handling, and filesystem behavior can be reviewed.
- Verify package provenance and signatures in CI, monitor ownership and release changes, and run dependency vulnerability scanning.
- Execute the CLI in a restricted environment with only
SELLERSPRITE_SECRET_KEYexposed; remove unrelated credentials and sensitive environment variables. - Restrict outbound traffic to the documented SellerSprite API over HTTPS and explicitly document the expected API hostname.
- Store credentials using restrictive filesystem permissions or an operating-system secret manager. Never print the key in logs, command output, or error messages.
- Use a narrowly scoped, revocable API key and rotate it immediately if dependency compromise is suspected.
- Pin
