T08 · Insecure Dependencies
- Location
SKILL.md:69- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 69
Vulnerability Type: Unpinned third-party dependency
Risk Level: Mediumbash pip3 install requests python3 "$SKILL_PATH/scripts/imagegen.py" init --skill-name seedream-5-lite-product-image python3 "$SKILL_PATH/scripts/imagegen.py" task --task-id <taskId>Technical Analysis
The installation instructions direct users to install
requestswithout specifying a reviewed version or verifying the package artifact with a cryptographic hash. Consequently, dependency resolution can change over time and will select whichever compatible release is available from the configured package index at installation time.If the upstream package, package-index account, configured index, or dependency delivery channel is compromised, a malicious or altered release could be installed. The project provides no lock file, version constraint, or hash allowlist to prevent such an artifact from being accepted. The resulting environment is also not reproducible, which makes security review and incident response more difficult.
Attack Path
- An attacker compromises the relevant package publication account, package index, configured mirror, or artifact delivery channel.
- The attacker makes a malicious package release or altered artifact available to dependency resolution.
- A user follows the documented
pip3 install requestsinstruction. pip3resolves and installs the attacker-controlled artifact because no version or hash is enforced.- Malicious code executes during package use by
scripts/imagegen.py, with the privileges of the user running the Skill.
Impact Assessment
Successful exploitation could execute arbitrary Python code in the Skill user's context. This may expose the AI Hive API key, user-selected media, generated output, and other files accessible to that account. It could also modify the Python environment or make unauthorized ...[truncated 292 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the unconstrained installation command with a reviewed, exact version pin, such as
requests==X.Y.Z. - Maintain dependencies in a lock or requirements file containing cryptographic hashes.
- Install with hash enforcement, for example:
bash python3 -m pip install --require-hashes -r requirements.txt - Generate the lock file from a trusted package index and review dependency updates before changing pinned versions or hashes.
- Recommend installation inside a dedicated virtual environment rather than a system-wide Python environment.
- Use a trusted package index over TLS and avoid unreviewed mirrors or additional indexes.
- Add automated dependency and vulnerability scanning to the release process.
- Replace the unconstrained installation command with a reviewed, exact version pin, such as
