T08 · Insecure Dependencies
- Location
SKILL.md:206- Finding
Unpinned Locust Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 206
Vulnerability Type: Unpinned third-party package installation
Risk Level: MediumVulnerable Code
bash # Install: pip install locustTechnical Analysis
The documented installation command installs Locust without specifying a reviewed version or validating package integrity. Consequently, package resolution depends on the mutable state of the configured Python package index at installation time.
Although there is no evidence that the legitimate Locust package is malicious, an unpinned installation can expose users to compromised future releases, compromised transitive dependencies, or unsafe package-index configuration. Python package installation may execute package-controlled build or installation logic, while the installed package later executes with the privileges of the user running the load test.
Attack Path
- An attacker compromises a future Locust release, one of its transitive dependencies, or a package source configured by the user.
- A user follows the documented
pip install locustinstruction. pipresolves and downloads the attacker-controlled package version.- Malicious code executes during installation, import, or subsequent Locust invocation.
- The code operates with the privileges and environment access of the installing or testing user.
Impact Assessment
Successful exploitation could permit arbitrary code execution under the affected user's account. Depending on the execution environment, the compromised dependency could access load-test scripts, environment variables, API credentials, result files, and network-accessible systems. The issue does not independently provide elevated operating-system privileges, but its scope includes resources available to the invoking user or CI worker.
- Remediation
View remediation
Remediation Suggestions
-
Pin Locust to a reviewed, exact version rather than relying on unconstrained resolution.
-
Lock all transitive dependencies and verify them with cryptographic hashes, such as through a hash-validated requirements file.
-
Install dependencies inside an isolated virtual environment or disposable container.
-
Configure
pipto use an approved package index and disallow unexpected secondary indexes. -
Periodically review and intentionally update the locked dependency set after security testing.
-
Prefer a documented command similar to:
bash python -m venv .venv . .venv/bin/activate pip install --require-hashes -r requirements.lock
-
