T08 · Insecure Dependencies
- Location
SKILL.md:13- Finding
Unverified Third-Party CLI Installation Creates a Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 13–19
Vulnerability Type: Unverified external binary installation
Risk Level: MediumVulnerable Documentation:
bash # Install (if not already installed) # Download from https://info.pocketalert.app/cli.html and extract to /usr/local/bin/ # Authenticate with your API key pocketalert auth <your-api-key>Technical Analysis
The skill instructs users to download an externally hosted CLI binary and extract it into the system-wide
/usr/local/bin/directory. It does not specify a pinned version, immutable artifact URL, expected cryptographic checksum, or signature-verification procedure.Consequently, the executable ultimately invoked by the skill is not represented by the audited project and its integrity cannot be established from the supplied files. If the hosting infrastructure, download page, distribution channel, or artifact is compromised, an attacker could substitute a malicious executable while preserving the expected
pocketalertcommand name.The risk is amplified because the next documented operation provides an API key to that executable. Depending on how authentication is implemented, the key could also be exposed through shell history or process command-line inspection.
Attack Path
- An attacker compromises the external download infrastructure, distribution artifact, or a user's network/download workflow.
- The attacker replaces the legitimate CLI with a malicious binary named
pocketalert. - A user follows the documented instructions and installs that binary into
/usr/local/bin/. - The user executes
pocketalert auth <your-api-key>. - The malicious executable captures the API key and may transmit it to the attacker.
- Because the executable runs as the invoking user, it may access that user's files, environment variables, and available credentials. If installation or execution occurs with ele ...[truncated 934 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to a specific, reviewed release and use an immutable versioned artifact URL.
- Publish an expected SHA-256 or stronger checksum through an independently protected channel and require verification before installation.
- Cryptographically sign release artifacts and document signature verification against a pinned, trusted public key.
- Prefer a trusted package repository that provides package signing and reproducible version metadata.
- Avoid installation into
/usr/local/bin/when system-wide access is unnecessary. Use a user-scoped directory with restrictive permissions and avoid elevated privileges. - Document verification of the downloaded file's ownership, permissions, checksum, and signature before execution.
- Do not place API keys directly in shell command arguments. Prefer secure interactive input, a protected credential store, or a narrowly scoped environment/file mechanism that does not expose secrets in shell history.
- Issue least-privilege API keys and provide procedures for rotation and revocation if compromise is suspected.
