T08 · Insecure Dependencies
Error
- Location
- SKILL.md:5
- Finding
- Unreviewed Third-Party CLI Handles Plaid Credentials and Financial Data<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 5 and 14 **Vulnerability Type**: Third-party dependency and supply-chain exposure **Risk Level**: High ### Vulnerable Code ```yaml metadata: {"clawdis":{"emoji":"💳","requires":{"bins":["plaid-cli"]},"install":[{"id":"go","kind":"go","module":"github.com/jverdi/plaid-cli@0.0.2","bins":["plaid-cli"],"label":"Install plaid-cli (go)"}]}} ``` ```text Install - `go install github.com/jverdi/plaid-cli@0.0.2` ``` ### Technical Analysis The Skill instructs users to download, compile, and execute a third-party Go module from a personal GitHub namespace. The dependency is version-pinned, which limits unexpected upgrades, but the project contains neither the dependency source nor a checksum or provenance policy through which auditors can verify the executable's behavior. This binary receives highly sensitive Plaid client secrets and access tokens and processes financial account, balance, and transaction information. It also requires network access for the declared functionality. Consequently, a malicious or compromised dependency would have both access to sensitive data and an available exfiltration channel. The audit did not establish that the named package is malicious. The vulnerability is the trust and supply-chain boundary created by automatically installing an unreviewed external executable for a security-sensitive role. ### Attack Path 1. An attacker compromises the upstream repository, release process, module source, or maintainer account associated with `github.com/jverdi/plaid-cli`. 2. A user follows the Skill instructions and runs `go install`. 3. The resulting executable runs under the user's account. 4. The user exports Plaid credentials or stores them in the CLI configuration and invokes the binary. 5. The compromised executable reads the credentials, tokens, account records, balances, and transactions that it legitimately handles. 6. It transmits those assets to an attacker-con ...[truncated 627 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Review and vendor the exact dependency source used by the Skill. 2. Record and verify immutable source or artifact hashes in addition to pinning a version. 3. Prefer an official, actively maintained Plaid client or a dependency with established provenance and security maintenance. 4. Generate reproducible builds and publish signed artifacts or attestations. 5. Run the CLI in an isolated environment with access only to the required configuration and data directories. 6. Restrict outbound network access to documented Plaid API and account-linking endpoints where operationally possible. 7. Use narrowly scoped, environment-specific credentials and establish rapid credential and token rotation procedures. 8. Re-audit the dependency before changing its version. ]]>
