T08 · Insecure Dependencies
- Location
SKILL.md:7- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:7andREADME.md:4,38
Vulnerability Type: Unpinned dependency and mutable supply-chain installation
Risk Level: MediumVulnerable Code
SKILL.md:7:yaml metadata: {"clawdbot":{"emoji":"🎯","tags":["recruitment","hiring","candidate-matching","headhunter","hr","jobs","ai-hiring","talent-acquisition"],"requires":{"bins":["python3"],"env":[],"config":[]},"install":["pip install email-validator"],"os":["darwin","linux","win32"]}}README.md:4:markdown > **快速开始:** `pip install email-validator && python3 test_headhunter.py`README.md:36-38:bash # 安装基础依赖 pip install email-validatorTechnical Analysis
The installation instructions request
email-validatorwithout specifying an exact version, integrity hash, lock file, or explicitly trusted package source. Consequently, the artifact installed bypipcan change over time even though the reviewed Skill remains unchanged.This creates a mutable supply-chain boundary: installation relies on the package index, the selected package release, its transitive dependencies, and any build or installation logic supplied by those packages. If a future release or dependency is compromised, users can receive and execute content that was not part of this audit.
The reviewed project contains only
README.mdandSKILL.md; it does not vendor or otherwise provide the dependency for inspection. The audit found no evidence that the named package is currently malicious. The risk arises from installing an unpinned and unhashed external dependency.Attack Path
- A user installs or activates the Skill and follows its dependency-installation instruction.
pip install email-validatorqueries the configured Python package index and resolves the package version available at that time.- An attacker compromises a future package release, a transitive dependency, the package-publi ...[truncated 997 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin the dependency to an explicitly reviewed version, for example:
bash python3 -m pip install "email-validator==REVIEWED_VERSION" -
Generate and publish a lock or requirements file containing cryptographic hashes, then enforce hash verification:
bash python3 -m pip install --require-hashes -r requirements.txt -
Pin and hash all transitive dependencies rather than only the direct package.
-
Document the approved package index and use an explicitly configured trusted source, preferably an organization-controlled package mirror.
-
Run installation in an isolated virtual environment as an unprivileged user; do not recommend administrative or system-wide installation.
-
Add dependency vulnerability and provenance checks to the release process, and review updates before changing pinned versions.
-
Keep the installation metadata and README instructions synchronized so every installation path applies the same version and integrity controls.
-
