T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:17- Finding
Unpinned Remote Plugin Retrieval and Execution
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 17-23
Vulnerability Type: Mutable remote code retrieval and insecure dependency execution
Risk Level: HighVulnerable Code
bash # Clone plugin cd ~/.openclaw/extensions git clone https://github.com/onesandzeros-nz/BreezClaw.git breezclaw # Install dependencies and build cd breezclaw npm install npm run buildTechnical Analysis
The installation procedure clones the repository's mutable default branch without pinning a reviewed commit or cryptographically verified release. It then executes
npm installandnpm run build.Consequently, the code executed by users can change after this skill has been reviewed. A repository compromise, malicious upstream update, or unsafe dependency update could introduce attacker-controlled code. In addition,
npm installcan execute package lifecycle scripts, whilenpm run buildexecutes commands defined by the downloaded repository.The audited artifact contains no plugin source, lockfile, commit identifier, release checksum, or signature with which to verify the retrieved payload and dependencies.
Attack Path
- An attacker compromises the upstream repository, its maintainer account, or a dependency used by the plugin.
- The attacker adds malicious code to the default branch, a dependency lifecycle script, or the repository's build command.
- A user follows the documented installation procedure and clones the mutable repository state.
- The user runs
npm installornpm run build, causing attacker-controlled code to execute. - The payload runs with the installing user's privileges and can attempt to access that user's files and wallet-related resources.
Impact Assessment
Successful exploitation permits arbitrary code execution with the privileges of the user performing the installation. Within those privileges, malicious code could access the OpenClaw configuration a ...[truncated 515 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin installation to a specific, reviewed commit hash or a signed, immutable release rather than the default branch.
- Publish expected checksums or signatures and require verification before installation or execution.
- Commit a reviewed package lockfile and replace
npm installwithnpm ciso dependency versions and integrity metadata are enforced. - Audit direct and transitive dependencies for compromised, typosquatted, or unmaintained packages.
- Disable npm lifecycle scripts during dependency installation where feasible, for example with
npm ci --ignore-scripts, and invoke only separately reviewed build steps. - Review the downloaded plugin's
package.json, lifecycle scripts, build commands, and source code before executing them. - Perform installation and builds in a restricted environment without access to production wallet data, mnemonics, API keys, or unnecessary user files.
- Document a trusted release and update process that requires review before changing the pinned version.
