T08 · Insecure Dependencies
- Location
requirements.txt:1- Finding
Unbounded Security-Critical SDK Dependency
- Content
View full analysis
Vulnerability Details
File Locations:
requirements.txt:1SKILL.md:55-58clawhub.json:10-13
Vulnerability Type: Unbounded third-party dependency installation
Risk Level: MediumVulnerable Code
requirements.txt:1:text simmer-sdk>=0.17.27SKILL.md:55-58:bash # Install the Simmer SDK (0.17.27 or newer): pip install -U 'simmer-sdk>=0.17.27'clawhub.json:10-13:json "pip": [ "simmer-sdk>=0.17.27" ]Technical Analysis
The project specifies only a minimum version of
simmer-sdk, while the installation instructions additionally usepip install -U. Consequently, an installation or upgrade may retrieve any future version published under that package name. There is no exact version pin, upper version bound, package hash, or lock file ensuring that users execute the dependency version reviewed with this Skill.This dependency operates in a security-sensitive context.
copytrader.pyimportsSimmerClient, supplies it withSIMMER_API_KEY, performs authenticated API requests, invokes wallet-related redemption behavior, and delegates trade execution toclient.trade(). In live Polymarket mode, the surrounding process may also containWALLET_PRIVATE_KEYin its environment. A compromised or unexpectedly changed SDK release would execute within that same process and security context.The issue is a supply-chain exposure rather than evidence that the currently available SDK version is malicious.
Attack Path
- An attacker compromises the SDK publisher account, package repository, release pipeline, or another channel capable of publishing a future
simmer-sdkrelease. - The attacker publishes a version newer than
0.17.27containing malicious initialization, networking, signing, or trading logic. - A user follows the documented
pip install -U 'simmer-sdk>=0.17.27'command, or the Skill manager resolves the manifest requirement during installation. - The package resolver installs the at ...[truncated 1112 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the SDK to an exact reviewed version:
text simmer-sdk==0.17.27- Remove
-Ufrom normal installation instructions so installation does not silently upgrade to an unreviewed release:
bash pip install 'simmer-sdk==0.17.27'- Generate a lock file containing transitive dependency versions and cryptographic hashes. Install with hash verification, such as:
bash pip install --require-hashes -r requirements.lock-
Keep
requirements.txt,SKILL.md, andclawhub.jsonsynchronized so every installation path resolves the same reviewed version. -
Review SDK release notes and source changes before upgrading. Update the exact pin and hashes only after testing credential handling, endpoint destinations, order signing, and trading behavior.
-
Run the Skill under a dedicated, least-privileged operating-system account. Supply
WALLET_PRIVATE_KEYonly for live external-wallet operation and avoid exposing unrelated credentials to the process. -
Prefer an isolated virtual environment and restrict outbound network access to the documented Simmer and required Polymarket endpoints where operationally feasible.
