Back to skill

Security audit

ZeroToken - Record once, automate forever

Security checks for vulnerabilities and agentic risk

Overview

This is a disclosed guide for using ZeroToken browser automation in OpenClaw, with ordinary automation and dependency-install risks but no hidden or deceptive behavior in the skill artifact.

Install only from trusted package sources, prefer pinned versions or an isolated environment, avoid elevated privileges, and review any saved scripts or default variables before using unattended browser replay, especially on accounts that can post, purchase, or access sensitive data.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:57
Finding

Unpinned Third-Party Package and Browser Dependency Installation

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 57 and 62–65
Vulnerability Type: Unpinned third-party dependencies and unverified installation artifacts
Risk Level: Medium

Vulnerable Code Snippet

text
- **OpenClaw + MCPorter**:`mcporter install zerotoken --target openclaw --configure`。
text
1. 安装包:`pip install zerotoken`
2. 安装 Playwright 浏览器依赖(否则浏览器工具会报错):
   - 普通环境:`playwright install chromium`
   - 如使用 uv:`uv run playwright install chromium --with-deps`

Technical Analysis

The Skill directs users to install ZeroToken and Playwright browser components without pinning reviewed versions, verifying cryptographic hashes, using a lockfile, or documenting an expected package source and publisher identity.

As a result, the code ultimately installed and executed may differ from what was reviewed. This creates a supply-chain risk if a package publisher or distribution account is compromised, a malicious release is published, dependency resolution selects an unexpected component, or users obtain a similarly named package from an untrusted registry.

The --with-deps installation variant may also install system-level browser dependencies, potentially increasing the privileges and host scope involved. The reviewed instructions do not themselves prove that any current package is malicious; the finding concerns the unsafe, mutable dependency acquisition process.

Attack Path

  1. An attacker compromises a relevant package publisher, distribution channel, or dependency account, or causes an environment to resolve the package through an attacker-controlled registry.
  2. The attacker publishes a malicious package release or substituted dependency under the expected package identity.
  3. A user follows the Skill instructions and executes the unpinned installation command.
  4. The installer retrieves the attacker-controlled release because no approved version or cryptographic hash is enforced.
  5. Malicious installation hooks or p ...[truncated 951 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin ZeroToken, MCPorter, Playwright, and related components to versions that have been reviewed and tested.
  2. Use a dependency lockfile with cryptographic hashes. For Python dependencies, prefer a controlled requirements file installed with:
    text
    pip install --require-hashes -r requirements.lock
    
  3. Explicitly identify trusted package registries and verified publisher identities; do not permit implicit fallback to arbitrary mirrors or extra indexes.
  4. Verify downloaded browser artifacts using vendor-supported integrity mechanisms and pin Playwright to a version associated with the expected browser build.
  5. Install dependencies in a dedicated virtual environment or container under a non-administrative account.
  6. Avoid running installation commands with elevated privileges. If operating-system dependencies are required, review and install an explicit allowlist through the system package manager.
  7. Scan and review dependency updates before changing pinned versions, and use automated vulnerability and provenance checks in the release process.
  8. Document exact supported versions and reproducible setup steps in SKILL.md.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (1)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

This markdown skill forces a specific language/locale in its natural-language instructions, which can violate organizational language policy when users are not given a choice. The file does not indicate that Chinese is optional, selectable, or required for a documented region-specific reason.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.