T08 · Insecure Dependencies
- Location
SKILL.md:38- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:38-42
Vulnerability Type: Unpinned dependency and mutable supply-chain input
Risk Level: MediumVulnerable Code
markdown ## Installation / 安装 ```bash pip install sgp4text ### Technical Analysis The installation instructions retrieve `sgp4` without specifying an audited version or requiring package integrity hashes. Consequently, the package artifact and dependency graph resolved by pip can change between installations. This does not demonstrate that the current `sgp4` package is malicious. However, it creates a supply-chain exposure in which a compromised future release, package-index substitution, or maliciously configured pip index could supply attacker-controlled installation or runtime code. Python packages may execute code during source builds, installation, or subsequent import. ### Attack Path 1. A user or Agent follows the documented `pip install sgp4` instruction. 2. Pip contacts its configured package index and resolves the latest compatible package because no version is pinned. 3. An attacker who has compromised the package, distribution channel, or configured index provides a malicious package artifact. 4. Pip installs or builds that artifact. 5. Attacker-controlled code executes during installation, build processing, or when `track.py` imports `sgp4.api`. ### Impact Assessment Malicious dependency code would run with the privileges of the user who performs the installation or invokes the Skill. Depending on those privileges, the code could read or modify user-accessible files, access environment variables and credentials, initiate network connections, or execute additional processes. No privilege escalation beyond the invoking user's existing permissions is established by the reviewed code.- Remediation
View remediation
Remediation Suggestions
-
Pin
sgp4to a specifically reviewed version rather than resolving an unrestricted latest release. -
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 locked hashes from a trusted environment and review dependency updates before changing them.
-
Document the intended trusted package index and avoid relying on uncontrolled global pip configuration.
-
Prefer prebuilt, verified wheels where practical and run installation with the minimum required user privileges.
-
