T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:29- Finding
Mutable Remote Repository Is Retrieved and Installed as Executable Code
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 29–31
Vulnerability Type: Remote payload retrieval and execution
Risk Level: Mediumbash git clone https://github.com/yungookim/openclaw-browser.git ~/clawd/openclaw-browser cd ~/clawd/openclaw-browser pip install -e .Technical Analysis
The installation instructions clone the mutable default branch of a third-party GitHub repository and install it as executable Python code. No immutable commit, signed release, checksum, or other integrity constraint is specified.
As a result, the code executed by users can differ from the code that existed when this Skill was reviewed. The supplied artifact contains only
SKILL.md; therefore, the remotely retrieved implementation—including its handling of passwords, cookies, browser sessions, and subprocesses—cannot be verified through this audit.Editable installation through
pip install -e .makes the cloned source directly importable and may also execute package build or installation logic. There is no evidence in the audited artifact that the referenced repository is currently malicious, but repository compromise, ownership transfer, or a malicious future update would create a direct execution channel.Attack Path
- An attacker compromises the referenced GitHub account or repository, or causes malicious code to be added to its default branch.
- A user follows the documented installation procedure without pinning or verifying the retrieved revision.
pip install -e .processes attacker-controlled packaging logic and installs the remote project.- The user or agent imports and invokes
OpenClawBrowserSkill. - The malicious implementation executes with the privileges of the OpenClaw process.
- Because the browser is intended to handle authenticated sites, the implementation could access credentials supplied to login helpers, persistent cookies, DOM content, and browsing activity, then t ...[truncated 833 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the repository to a specific, reviewed commit hash rather than cloning a mutable default branch.
- Prefer a signed, versioned release and verify its signature or cryptographic checksum before installation.
- Vendor the reviewed implementation into the Skill package so the audited artifact contains the code that will execute.
- Lock all transitive Python dependencies with exact versions and hashes.
- Avoid editable installation for production use; build and install a reproducible artifact instead.
- Publish the source and dependency review results for the exact pinned revision.
- Run the browser implementation in a sandbox with restricted filesystem access, a minimal environment, and narrowly scoped network permissions.
- Do not pass credentials to the implementation until its credential handling, logging, IPC, cookie storage, and outbound network destinations have been independently reviewed.
