T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:27
- Finding
- Unpinned Third-Party CLI Installation Creates Supply-Chain Risk## Vulnerability Details **File Location**: `SKILL.md`, lines 27–30 **Vulnerability Type**: Unpinned third-party dependency installation **Risk Level**: Medium **Complete Code Snippet**: ```bash python3 -m pip install --user pipx python3 -m pipx ensurepath pipx install google-search-console-cli gsc --version ``` ### Technical Analysis The Skill instructs users to install both `pipx` and `google-search-console-cli` from the configured Python package index without pinning reviewed versions, validating cryptographic hashes, specifying a trusted package index, or supplying a lockfile. Package installation may execute package-controlled build and installation logic under the user's account. This is particularly sensitive because the installed `gsc` program is subsequently entrusted with an OAuth client-secret file and Google authorization tokens. The project contains only `SKILL.md`, so the implementation and transitive dependencies of the externally installed CLI could not be audited. This finding does not establish that the named package is malicious; it identifies the mutable and insufficiently verified dependency installation process as a supply-chain weakness. ### Attack Path 1. A user follows the documented installation commands. 2. `pip` or `pipx` resolves mutable packages and their transitive dependencies through the user's configured package index. 3. An attacker compromises a package release, dependency, maintainer account, or configured package source. 4. Malicious package-controlled logic executes during installation or when `gsc` is invoked. 5. When the user later authenticates, the compromised CLI can access the supplied OAuth client-secret file and locally stored OAuth credentials. 6. The malicious code can abuse the user's operating-system permissions or make unauthorized Search Console API requests within the granted OAuth scopes. ### Impact Assessment Exploitation could provide arbitrary code exec ...[truncated 685 chars]
- Remediation
- ## Remediation Suggestions 1. Pin `pipx`, `google-search-console-cli`, and relevant transitive dependencies to reviewed versions. 2. Distribute a requirements or lock file containing cryptographic hashes and install with hash verification. 3. Explicitly specify and document the trusted package index rather than relying on ambient package-manager configuration. 4. Publish package provenance, signatures, or attestations and document how users can verify downloaded artifacts. 5. Prefer installation from a reviewed source revision or signed release artifact. 6. Run the CLI in an isolated environment and avoid granting it broader filesystem permissions than required. 7. Recommend `--readonly` whenever write operations are unnecessary, reducing the impact of credential compromise. 8. Document restrictive permissions for credential files and advise users not to place credentials in shared directories.
