T08 · Insecure Dependencies
- Location
SKILL.md:24- Finding
Unpinned Installation from a Mutable Remote Git Repository
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:24
Vulnerability Type: Supply-chain risk from an unpinned remote dependency
Risk Level: MediumVulnerable Code
bash pip install git+https://github.com/minirr890112-byte/model-watch.gitThe same instruction also appears in
README.md:11.Technical Analysis
The documented installation command retrieves and installs the current contents of a remote Git repository without pinning an immutable commit SHA, verifying a package hash, or requiring a signed release. Consequently, the code installed by users can differ from the version audited here.
During installation, pip can invoke the remotely supplied Python build backend and package build logic. If the repository or its maintainer account is compromised—or if a later revision becomes malicious—the installation process may execute attacker-controlled code under the installing user's account.
The audited local implementation itself does not retrieve or execute remote payloads at runtime. The risk specifically arises from the mutable installation source documented by the project.
Attack Path
- An attacker compromises the referenced GitHub repository, its maintainer account, or another mechanism capable of changing its default branch.
- The attacker adds malicious package code or build-time behavior to that branch.
- A user follows the documented
pip install git+https://...command. - Pip downloads the attacker-controlled revision and invokes its package build or installation process.
- Malicious code executes with the privileges of the user running pip and may persist as part of the installed package.
Impact Assessment
Successful exploitation can provide arbitrary code execution with the installing user's privileges. The attacker could access or modify files available to that user, steal credentials present in the user's environment, alter the installed package, or establish user-level persistence. If installation i ...[truncated 118 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the mutable branch installation command with a versioned package from a trusted package registry.
- Publish signed, reproducible releases and document installation of an explicit version.
- If Git installation is necessary, pin the dependency to a reviewed immutable commit SHA, for example:
bash pip install "git+https://github.com/minirr890112-byte/model-watch.git@<reviewed-full-commit-sha>" - Prefer locked dependencies with verified cryptographic hashes, such as pip requirements using
--require-hashes. - Protect the source repository with multi-factor authentication, branch protection, mandatory review, and signed release tags.
- Keep
SKILL.md,README.md, and package metadata synchronized so all installation instructions refer to the same reviewed release.
