Back to skill

Security audit

Wyze

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent Wyze smart-home controller, with disclosed credential and token use, but users should be careful about its unpinned dependency and device-control authority.

Install only if you are comfortable giving this skill control over Wyze lights, plugs, and wall switches. Use a dedicated Wyze API key, keep the secrets and token directory private, review the wyze-node package before installing, and be especially careful with plugs or switches connected to doors, gates, heaters, or other physical equipment.

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
scripts/package.json:5
Finding

Unpinned Third-Party Runtime Dependency

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (2)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding

The skill explicitly relies on environment-based secrets and configuration (WYZE_EMAIL, WYZE_KEY_ID, WYZE_API_KEY, WYZE_ENV, WYZE_TOKEN_DIR) and runs a local Node CLI, but it declares no explicit tool scope or permissions boundary. This creates an authorization gap: an agent/runtime may grant broader environment access than intended, enabling unintended secret exposure or use of sensitive local configuration during device-control operations.

Content

No source excerpt is available for this finding.

Unpinned Dependencies

Low
Category
Supply Chain
Confidence
92% confidence
Finding

The dependency is specified with a caret range (^2.12.2), which allows newer compatible releases to be installed without explicit review. That creates a supply-chain risk: a future compromised or breaking upstream release of wyze-node could be pulled into the skill and gain access to smart-home control flows and any credentials the library handles.

Content

Scanner excerpt · scripts/package.json (reported line 6)May include surrounding context.

json
"private": true,
  "description": "Runtime dependency for the Wyze OpenClaw skill",
  "dependencies": {
    "wyze-node": "^2.12.2"
  }
}

Static analysis

No suspicious patterns detected.