T08 · Insecure Dependencies
Warning
- Location
- clawhub.json:3
- Finding
- Unpinned Privileged Trading SDK Dependency<![CDATA[ ## Vulnerability Details **File Location**: `clawhub.json:3-9` **Vulnerability Type**: Unpinned third-party dependency with access to trading credentials **Risk Level**: Medium ### Vulnerable Code ```json "requires": { "env": [ "SIMMER_API_KEY" ], "pip": [ "simmer-sdk" ] }, ``` ### Technical Analysis The project installs `simmer-sdk` without an exact version or package hash. This SDK receives `SIMMER_API_KEY` at runtime and controls market discovery and trade execution. Consequently, a future compromised or malicious package release could execute arbitrary installation or runtime code with the privileges of the process. Because no lockfile, exact version, or integrity hash is supplied, repeated installations can resolve to different dependency versions after the audited source code remains unchanged. ### Attack Path 1. An attacker compromises the `simmer-sdk` distribution account or publishes a malicious future release. 2. The project installation resolves the unpinned dependency to that release. 3. Package installation hooks or imported module code execute on the host. 4. The malicious package reads `SIMMER_API_KEY` from the process environment. 5. The attacker exfiltrates the credential, submits unauthorized trades, or performs other actions available to the host process. ### Impact Assessment A successful supply-chain compromise could expose the trading API key and permit unauthorized activity within the credential's scope, including real-money order submission. Arbitrary package code would also run with the operating-system privileges of the user executing the skill, potentially affecting other data and credentials accessible to that account. ]]>
- Remediation
- <![CDATA[ ## Remediation Suggestions - Pin `simmer-sdk` to an exact, reviewed version rather than accepting any available release. - Use a lockfile and require cryptographic package hashes during installation. - Verify the package's publisher, source repository, and release provenance. - Review upgrades before changing the pinned version. - Run the skill in an isolated environment with minimal filesystem and network permissions. - Scope and rotate `SIMMER_API_KEY`; where supported, restrict it to only the required venue, account, and trading limits. ]]>
