T08 · Insecure Dependencies
- Location
SKILL.md:125- Finding
Unpinned Third-Party Package Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 125
Vulnerability Type: Unpinned dependency installation
Risk Level: Mediumbash pip install requestsTechnical Analysis
The setup instructions install
requestswithout a version constraint, lock file, or integrity hash. Consequently, the installed code depends on the mutable state of the configured Python package index at execution time.Package installation can execute package-controlled build or installation logic with the invoking user's permissions. The risk becomes exploitable if the configured index, package release, dependency resolution process, or network environment is compromised. The demonstrated SM-2 functionality only uses Python standard-library modules, so the audited content does not establish a need for this dependency.
Attack Path
- A user or agent follows the skill's environment-preparation instructions.
- The agent executes
pip install requests. pipresolves the latest available package and transitive dependencies through its configured indexes.- An attacker who has compromised an applicable release, dependency, index, or package-resolution environment supplies malicious package content.
- Malicious build or installation logic executes under the account running
pip. - The installed code can retain the same access whenever it is subsequently imported or invoked.
Impact Assessment
Successful exploitation could execute arbitrary code with the permissions of the user or agent running the installation. This may permit access to files, environment variables, credentials, network resources, and other assets available to that account. The scope does not inherently exceed the invoking account's operating-system privileges.
Exploitation requires compromise or hostile control of some part of the package supply chain or package-index configuration; the audited project does not itself contain a malicious ...[truncated 27 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the installation instruction because the included SM-2 example does not use
requests. - If the dependency is genuinely required, pin an audited version rather than resolving the latest release.
- Use a lock file containing cryptographic hashes and install with hash verification, such as
pip install --require-hashes. - Restrict package resolution to an approved, authenticated package index.
- Review and pin all transitive dependencies.
- Perform installation inside an isolated virtual environment or sandbox with minimal filesystem and network permissions.
- Integrate dependency vulnerability and provenance checks into the release process.
- Remove the installation instruction because the included SM-2 example does not use
