T08 · Insecure Dependencies
- Location
SKILL.md:11- Finding
Unpinned Third-Party Package and Plugin Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:11-13;references/hosts.md:6-7,references/hosts.md:15-16, andreferences/hosts.md:35-36
Vulnerability Type: Unpinned and mutable third-party dependencies
Risk Level: MediumVulnerable Code
SKILL.md:11-13:markdown - Prefer `pip install "mnemos-memory[mcp]"` and `mnemos ui`. - For OpenClaw / ClawHub, teach the agent to self-install `mnemos-memory[mcp]`, run `mnemos ui`, then wire `mnemos-mcp` to the canonical `MNEMOS_CONFIG_PATH` before relying on memory. - Recommend SQLite as the supported persistent store.references/hosts.md:6-7:bash pip install "mnemos-memory[mcp]" mnemos uireferences/hosts.md:15-16:bash pip install "mnemos-memory[mcp]" mnemos uireferences/hosts.md:35-36:text /plugin marketplace add anthony-maio/mnemos /plugin install mnemos-memory@mnemos-marketplaceTechnical Analysis
The Skill instructs users or agents to install an executable Python package and a marketplace plugin without pinning a reviewed version, commit, artifact digest, or package hash. Consequently, the installed content may differ from the content that existed when this Skill was audited.
Python package installation can execute dependency-controlled build or installation logic and installs executable commands that are subsequently invoked as
mnemos,mnemos-cli, andmnemos-mcp. The optionalmcpdependency group can also introduce transitive dependencies whose versions are not constrained in this Skill. Similarly, adding a mutable plugin marketplace and installing a plugin by name does not establish an immutable trust boundary.The self-installation recommendation for OpenClaw and ClawHub increases the risk because an agent may initiate installation without a human independently reviewing the resolved package version and dependency tree. There is no evidence that the currently referenced pa ...[truncated 1633 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the Python package to a specific reviewed version, for example:
bash python -m pip install "mnemos-memory[mcp]==<reviewed-version>" - Maintain a lock file that constrains all transitive dependencies, not only the top-level package.
- Require package hashes with
pip --require-hashesor install a verified artifact whose SHA-256 digest is documented. - Pin marketplace content to a reviewed release tag or commit digest instead of relying on a mutable repository or plugin name.
- Document the authoritative package registry, publisher identity, source repository, and release-signing or provenance verification procedure.
- Require explicit user approval before an agent installs packages or plugins, especially during self-bootstrap flows.
- Perform installation in an isolated virtual environment or container with least-privilege filesystem and network access.
- Review dependency changes before upgrades and run vulnerability, provenance, and malware checks against the fully resolved dependency set.
- Separate installation from execution so users can inspect the selected version and resolved artifacts before launching
mnemos,mnemos-cli, ormnemos-mcp.
- Pin the Python package to a specific reviewed version, for example:
