Back to skill

Security audit

WhatsApp skill 1

Security checks for vulnerabilities and agentic risk

Overview

This skill clearly provides WhatsApp messaging and history search through a local CLI, with disclosed authentication, storage, and confirmation requirements.

Install this only if you are comfortable giving wacli access to your WhatsApp account and local message history. Prefer a pinned or verified wacli release where possible, review the upstream project, and confirm every outgoing message before sending.

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:11
Finding
Unpinned Third-Party Executable Dependency## Vulnerability Details **File Location**: `SKILL.md`, lines 11-27 **Vulnerability Type**: Mutable and unverified third-party executable dependency **Risk Level**: Medium ### Vulnerable Code ```yaml "install": [ { "id": "brew", "kind": "brew", "formula": "steipete/tap/wacli", "bins": ["wacli"], "label": "Install wacli (brew)", }, { "id": "go", "kind": "go", "module": "github.com/openclaw/wacli/cmd/wacli@latest", "bins": ["wacli"], "label": "Install wacli (go)", }, ], ``` ### Technical Analysis The installation configuration obtains and executes `wacli` from a third-party Homebrew tap or from a mutable Go `@latest` reference. Neither installation option specifies an immutable version, commit hash, artifact checksum, nor cryptographic signature. Consequently, the installed executable can differ from the version reviewed during the Skill audit. The `@latest` selector explicitly resolves according to upstream state at installation time, while the unversioned Homebrew formula may also resolve to a subsequently modified package. This creates a supply-chain trust boundary in which compromise of the upstream repository, release process, package metadata, maintainer account, or distribution channel could introduce attacker-controlled executable code. This finding does not establish that the current upstream package is malicious. The vulnerability is the absence of controls ensuring that installation retrieves the specific artifact that was audited. ### Attack Path 1. An attacker compromises an upstream maintainer account, repository, Homebrew tap, release workflow, or another relevant distribution component. 2. The attacker publishes a modified `wacli` release or changes the package metadata referenced by the unpinned installation declaration. 3. A user or agent installs the dependency through the configured Homebrew sourc ...[truncated 1320 chars]
Remediation
## Remediation Suggestions 1. Replace `github.com/openclaw/wacli/cmd/wacli@latest` with a specific audited semantic version or, preferably, an immutable commit identifier. 2. Pin the Homebrew installation to a reviewed release where the deployment mechanism supports reliable version pinning. 3. Verify downloaded release artifacts using a published SHA-256 or stronger checksum obtained through a trusted channel. 4. Require cryptographic signature or provenance verification, such as signed release artifacts and verifiable build attestations. 5. Document the exact approved version and periodically review dependency updates before changing the pin. 6. Execute the tool with least privilege and restrict access to `~/.wacli` using appropriate filesystem permissions. 7. Where practical, isolate the executable in a sandbox with narrowly scoped filesystem and network access. 8. Avoid automatic upgrades that bypass review, integrity verification, or provenance checks.
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

Static analysis

No suspicious patterns detected.