T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:20- Finding
Unpinned Remote Repository Is Cloned and Its Installer Is Executed
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 20–25
Vulnerability Type: Remote payload retrieval and execution
Risk Level: HighVulnerable code:
bash git clone https://github.com/ElonAug7/Mnemosyne-agentmemory-engine-openclaw-hermes cd Mnemosyne-agentmemory-engine-openclaw-hermes/Mnemosyne-v6.4 bash install.shThe documentation further states:
text Installer auto-injects the memory protocol into SOUL.md / AGENTS.md and serves a Web UI at http://127.0.0.1:8765.Technical Analysis
The installation procedure clones the current state of a remote Git repository and immediately executes
install.sh. It does not pin the checkout to a reviewed commit hash or release artifact, nor does it require signature or checksum verification.Consequently, the code executed by users can differ from the code that existed when this skill was reviewed. The remote repository owner—or an attacker who compromises the repository, its account, or its distribution path—can alter
install.shor files invoked by it after publication. Running the documented command would then execute that changed payload with the privileges of the user running the installer.The declared behavior also includes modifying persistent agent instruction files (
SOUL.mdandAGENTS.md). This increases the impact of a remote payload because installer-controlled instructions may continue affecting later agent sessions. However, the installer itself is not present in the audited project, so its exact implementation and any additional behavior cannot be verified from this artifact.Attack Path
- A user follows the installation instructions in
SKILL.md. - The user clones the repository without selecting a fixed, previously reviewed commit.
- Before installation, an attacker compromises the upstream repository or an authorized maintainer publishes a modified installer.
bash install.shexecutes the altered re ...[truncated 1113 chars]
- A user follows the installation instructions in
- Remediation
View remediation
Remediation Suggestions
- Pin installation to a specific, reviewed commit hash rather than the remote repository's current default branch.
- Publish versioned, immutable release artifacts and provide a cryptographic SHA-256 or stronger checksum through an independent trusted channel.
- Prefer signed Git tags or release artifacts and require signature verification before execution.
- Avoid piping or immediately executing newly downloaded code. Separate retrieval, verification, review, and execution into explicit steps.
- Include the complete installer and all invoked scripts in the skill package so they can be audited together with the documentation.
- Display and obtain explicit consent before modifying
SOUL.md,AGENTS.md, or other persistent agent state. - Back up persistent instruction files before modification and provide a documented uninstall and rollback process.
- Run installation with the least-privileged account possible; explicitly warn users not to invoke it with
sudoor as root. - Document every file modified, process started, network listener opened, and scheduled or persistent mechanism installed.
- Bind the Web UI only to loopback, require authentication where sensitive memory is exposed, and disable it by default unless needed.
