T08 · Insecure Dependencies
Error
- Location
- SKILL.md:20
- Finding
- Unpinned Third-Party SDK Controls Credential and Financial Operations<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:20-24`, `clawhub.json:4-7`, `edge_trader.py:17`, `edge_trader.py:44-53` **Vulnerability Type**: Unpinned security-critical dependency and unsafe supply-chain trust **Risk Level**: High ### Vulnerable Code ```markdown Install the AION SDK: ```bash pip install aionmarket-sdk ``` ``` ```json "requires": { "pip": ["aionmarket-sdk"], "env": ["AION_API_KEY"] } ``` ```python from aion_sdk import AionMarketClient ``` ```python def get_client() -> AionMarketClient: """Get or create AionMarketClient singleton.""" global _client if _client is None: api_key = os.getenv("AION_API_KEY") if not api_key: raise ValueError("AION_API_KEY environment variable is required") base_url = os.getenv("AION_BASE_URL", "https://pm-t1.bxingupdate.com/bvapi") _client = AionMarketClient(api_key=api_key, base_url=base_url) return _client ``` ### Technical Analysis The Skill installs `aionmarket-sdk` without an exact version, package hash, or verified source declaration. The imported SDK controls all network and financial operations, including access to the AION API key, account briefing, redemption, market context, and signed-order submission. Because dependency resolution is not reproducible, a compromised future package version or package-registry incident could introduce arbitrary installation-time or runtime code after the Skill itself has been reviewed. The default service endpoint is also not an evident official Polymarket origin, while the project provides no local SDK implementation or integrity mechanism with which to validate the behavior of that dependency. ### Attack Path 1. An attacker compromises the package publisher, registry account, distribution infrastructure, or a newly resolved package release. 2. The user follows the documented `pip install aionmarket-sdk` command without a version or hash constraint. 3. Malicious dependency code execut ...[truncated 816 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin `aionmarket-sdk` to an audited exact version in both installation documentation and package metadata. 2. Use a lock file or requirements file containing cryptographic package hashes, such as `pip install --require-hashes`. 3. Document and verify the expected package registry, publisher identity, source repository, and release-signing process. 4. Audit or vendor the security-critical portions of the SDK responsible for authentication, redemption, and order submission. 5. Run the Skill in a restricted environment containing only the environment variables and filesystem permissions it requires. 6. Use a verified service endpoint and document its ownership and trust relationship. 7. Add dependency monitoring and require manual security review before updating the pinned SDK version. ]]>
