T08 · Insecure Dependencies
- Location
cninfo-report-download.md:17- Finding
Unpinned requests Dependency Allows Unreviewed Supply-Chain Changes
- Content
View full analysis
Vulnerability Details
File Location:
cninfo-report-download.md, lines 17-18
Vulnerability Type: Unpinned third-party dependency
Risk Level: MediumVulnerable Code
yaml install: | pip install requestsTechnical Analysis
The installation command does not constrain
requeststo a reviewed version and does not verify package hashes. Consequently, installation resolves whichever compatible release the configured package index serves at installation time.This makes the installed code different from the code assessed during the Skill review. Exploitation would require compromise of the upstream package, the configured package index, or the package-resolution channel. A malicious release or substituted distribution could execute code during installation or when the Skill imports the dependency.
Attack Path
- An attacker compromises the upstream dependency distribution, package index, or dependency-resolution channel.
- The attacker causes a malicious or modified
requestsrelease to be selected. - A user follows the documented
pip install requestsinstruction. - The package manager downloads and installs the unreviewed release.
- Malicious dependency code executes during installation or when imported by the Skill.
Impact Assessment
Malicious dependency code would run with the privileges of the account installing or invoking the Skill. It could access files, environment variables, network resources, and credentials available to that account. The package itself does not document privilege escalation, so the expected scope is limited to the invoking user's permissions and runtime environment.
- Remediation
View remediation
Remediation Suggestions
- Pin
requeststo a reviewed, exact version rather than resolving the latest available release. - Supply a hash-locked requirements file generated from reviewed artifacts.
- Install with hash enforcement, for example:
bash pip install --require-hashes -r requirements.txt - Use a trusted internal package mirror or an authenticated package index.
- Run dependency vulnerability and provenance checks in CI.
- Periodically update dependencies through a controlled review process rather than allowing automatic resolution at installation time.
- Pin
