T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:57
- Finding
- Mutable Remote Installer Is Piped Directly into Bash## Vulnerability Details **File Location**: `SKILL.md`, line 57 **Vulnerability Type**: Remote payload retrieval and immediate shell execution **Risk Level**: High **Vulnerable Code**: ```bash curl -fsSL https://raw.githubusercontent.com/ob-labs/memory-powermem/main/install.sh | bash -s -y ``` ### Technical Analysis The installation instructions retrieve `install.sh` from the mutable `main` branch of an external GitHub repository and stream it directly into Bash. The command does not pin an immutable commit or release, verify a cryptographic checksum or signature, save the script for inspection, or request confirmation before execution. The remote installer is not included in the audited artifact, so its effective behavior cannot be determined from this project. Its contents can also change after the Skill has been reviewed. Direct shell execution is unnecessary for the declared plugin-installation function when safer approaches such as a pinned, reviewed installer or a supported package-management command could be used. ### Attack Path 1. An attacker compromises the upstream repository, a maintainer account, or another component of the delivery chain. 2. The attacker modifies `install.sh` on the repository's `main` branch. 3. A user follows the Skill instructions and executes the documented command. 4. `curl` retrieves the attacker's current script without integrity verification. 5. Bash immediately executes the script with all permissions and environmental access available to the invoking user. 6. The payload can modify local files and OpenClaw configuration, read user-accessible information, install additional components, or contact attacker-controlled systems. ### Impact Assessment Successful exploitation provides arbitrary code execution with the privileges of the user running the installation command. The accessible scope can include that user's files, OpenClaw data and configuration, environment variables, API ...[truncated 286 chars]
- Remediation
- ## Remediation Suggestions 1. Do not pipe remotely retrieved content directly into a shell. 2. Pin the installer to an immutable, reviewed commit or versioned release rather than `main`. 3. Download the installer as a separate file and verify a publisher-provided cryptographic signature or trusted SHA-256 digest before execution. 4. Make the script available for user inspection before it is run. 5. Prefer a supported OpenClaw package or plugin installation mechanism that provides versioning and integrity validation. 6. Execute the installer with ordinary user privileges and explicitly document the files, configuration, network access, and commands it requires. 7. Where practical, vendor the reviewed installer into the distributed artifact so its behavior is included in future audits.
