T08 · Insecure Dependencies
- Location
SKILL.md:8- Finding
Unverified Git Dependency Is Downloaded and Executed
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:8-11and duplicated atSKILL.md:17-20
Vulnerability Type: Supply-chain exposure through an externally retrieved Python package
Risk Level: MediumVulnerable Code
yaml install: - name: "pip install (pinned commit)" command: "pip3 install git+https://github.com/milu-ai/openclaw360.git@5fd69db" - name: "pip install (venv, for Homebrew Python)" command: "python3 -m venv ~/.openclaw360-venv && ~/.openclaw360-venv/bin/pip install git+https://github.com/milu-ai/openclaw360.git@5fd69db"The same installation commands are repeated in the metadata block:
yaml metadata: clawdbot: install: - name: "pip install (pinned commit)" command: "pip3 install git+https://github.com/milu-ai/openclaw360.git@5fd69db" - name: "pip install (venv, for Homebrew Python)" command: "python3 -m venv ~/.openclaw360-venv && ~/.openclaw360-venv/bin/pip install git+https://github.com/milu-ai/openclaw360.git@5fd69db"Technical Analysis
The Skill instructs users to install executable Python code directly from an external Git repository. The referenced implementation is not included in the audited project, which contains only
SKILL.md; therefore, the downloaded package, its transitive dependencies, and its installation hooks could not be verified during this audit.Pinning the source to
5fd69dbreduces exposure to ordinary branch or tag changes, but this is only an abbreviated eight-character Git revision rather than a full commit identifier. The installation also lacks artifact-level cryptographic verification such as a wheel hash enforced bypip --require-hashes. During a VCS installation, pip retrieves the repository and may execute package build-backend or setup logic under the installing user's account.This does not establish that the upstream package is malicious. It creates a supply-c ...[truncated 2061 chars]
- Remediation
View remediation
Remediation Suggestions
- Include the complete executable implementation in the reviewed Skill artifact so its filesystem access, network behavior, logging, backup logic, and dependency graph can be audited together.
- If external installation remains necessary, publish a versioned wheel through a controlled package repository and provide a locked requirements file containing SHA-256 hashes.
- Require hash verification during installation, for example through
pip install --require-hashes -r requirements.txt. - Replace the abbreviated revision with the full 40-character Git commit identifier and document an independently verified expected source-tree or artifact digest.
- Pin and hash all build and runtime dependencies, including the build backend, to reduce transitive supply-chain exposure.
- Build the wheel in an isolated CI environment, generate provenance or attestations, and sign release artifacts using a verifiable release key.
- Install and run the scanner in a dedicated virtual environment with restricted filesystem permissions and no network access after installation.
- Require explicit user confirmation before scanning default or system-wide Skill directories, and enforce allowlisted scan roots in the implementation.
- Independently verify that the installed implementation does not access credential directories, start background services, perform automatic updates, or transmit inspected content.
