T08 · Insecure Dependencies
- Location
SKILL.md:5- Finding
Unpinned Third-Party Python Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:5andSKILL.md:29-34
Vulnerability Type: Unpinned third-party dependency installation
Risk Level: MediumVulnerable Code
yaml metadata: {"openclaw": {"emoji": "🧬", "category": "ai", "requires": {"bins": ["python3.12"], "pip": ["evoagentx"], "python_path": "C:\\Users\\z\\AppData\\Local\\Programs\\Python\\Python312\\python.exe"}, "homepage": "https://github.com/EvoAgentX/EvoAgentX"}}powershell # Check status first .\evoagentx.ps1 -Action status # Install (if needed) .\evoagentx.ps1 -Action installTechnical Analysis
The skill declares the
evoagentxpackage without an exact version constraint, dependency lock file, or artifact integrity hash. Consequently, installation may resolve to a different package version over time. The project also contains no vendored package code with which to verify the installed artifact.The upstream homepage does not cryptographically bind the package retrieved by the Python package manager to the reviewed source repository. Python packages and their transitive dependencies may execute package-controlled build or installation logic. Therefore, compromise of the package distribution channel, a future malicious release, or compromise of a transitive dependency could result in code execution during installation or subsequent use.
The referenced
evoagentx.ps1script is absent from the audited project, so its package source, installation flags, and validation behavior cannot be verified.Attack Path
- A user activates the skill or follows the documented installation command.
- The installation mechanism resolves
evoagentxwithout an exact version or required hash. - The package manager downloads the version currently offered by the configured package index, together with applicable transitive dependencies.
- If a resolved artifact or dependency has been compromised, package-controlled i ...[truncated 927 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
evoagentxto a specifically reviewed release, for example with an exact==version constraint. - Generate and commit a lock file covering all transitive dependencies.
- Require cryptographic hashes for every downloaded artifact, such as through pip's
--require-hashesmode and a hash-locked requirements file. - Configure installation to use an explicitly trusted package index and reject unexpected fallback indexes.
- Review the selected package release and its dependency tree before updating the pinned version.
- Include the referenced
evoagentx.ps1script in the project so its package source, command construction, integrity checks, and error handling can be audited. - Avoid automatic dependency installation where practical. Perform installation in an isolated virtual environment with least-privilege permissions.
- Keep provider API keys out of the installation process and expose them only to the runtime process that requires them.
- Pin
