T08 · Insecure Dependencies
- Location
skill.md:6- Finding
Unpinned External Python Package and Repository Installation
- Content
View full analysis
Vulnerability Details
File Locations:
skill.md:6skill.md:103-110skill.md:270-277readme.md:33-40readme.md:303-310
Vulnerability Type: Unverified and mutable third-party dependency installation
Risk Level: MediumVulnerable Code
skill.md:6:yaml metadata: {"clawdbot":{"emoji":"⚖️","tags":["legal","corporate-lawyer","contract-review","transaction","compliance","m&a","business-law","commercial-law","risk-assessment","negotiation"],"requires":{"bins":["python3"],"env":[],"config":[]},"install":["pip install -e ."],"os":["darwin","linux","win32"]}}skill.md:103-110and duplicated atskill.md:270-277:bash # From PyPI pip install openclaw-skill-corporate-lawyer # From source git clone https://github.com/ZhenRobotics/openclaw-corporate-lawyer.git cd openclaw-corporate-lawyer pip install -e .readme.md:33-40and duplicated atreadme.md:303-310:bash # From PyPI (when published) pip install openclaw-skill-corporate-lawyer # From source git clone https://github.com/ZhenRobotics/openclaw-corporate-lawyer.git cd openclaw-corporate-lawyer pip install -e .Technical Analysis
The installation instructions retrieve and install Python code without pinning an immutable package version or Git commit and without supplying integrity hashes. The PyPI command resolves whatever release is selected at installation time, while the Git command clones the repository's current default branch. Consequently, the installed code can differ from the content that was reviewed.
The local artifact contains only
readme.mdandskill.md; it does not contain the advertised Python implementation. Therefore, the package source, build configuration, installation hooks, runtime code, and transitive dependencies cannot be verified as part of this audit.Python package installation may execute build backend logic or other installation-related c ...[truncated 1992 chars]
- Remediation
View remediation
Remediation Suggestions
- Include the complete implementation and build configuration in the audited artifact so installation and runtime behavior can be reviewed.
- Pin the PyPI dependency to a reviewed, immutable version rather than allowing unconstrained resolution.
- Use a lockfile with cryptographic hashes and install with hash verification, such as
pip install --require-hashes. - If installation from Git is necessary, pin a full reviewed commit hash rather than cloning the mutable default branch.
- Verify release provenance through signed commits, signed tags, trusted publishing, or package attestations.
- Pin and audit all transitive dependencies and use automated dependency and malware scanning in the release process.
- Build and install in an isolated, least-privileged environment without production credentials or sensitive host mounts.
- Avoid administrator or root installation and prohibit unreviewed package installation in privileged CI or production environments.
- Ensure the metadata installation command refers only to source bundled with and verified as part of the skill artifact.
