Back to skill

Security audit

Local Tuya Light Control

Security checks for vulnerabilities and agentic risk

Overview

This lamp-control skill is mostly purpose-aligned, but it asks agents to persistently edit the skill itself and run unverified local tools from mutable paths.

Review this skill before installing. It is designed for a specific local Tuya lamp setup and may run local executables, use local network discovery, refresh Tuya device keys, and update lamp configuration. Prefer changing paths in a separate config file, verify the lampctl and Python scripts yourself, and avoid allowing the agent to rewrite the installed SKILL.md automatically.

Vulnerability Patterns
  • Tool Hijacking and SpoofingModifies or replaces tools so legitimate-looking calls execute attacker logic
  • 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)

T07 · Tool Hijacking and Spoofing

Warning
Location
SKILL.md:8
Finding

Unverified Execution of External Tools from Mutable Workspace Paths

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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 (3)

Self-Modification

High
Category
Rogue Agent
Confidence
96% confidence
Finding

The skill explicitly instructs the agent to modify SKILL.md to match the local environment. Allowing a skill to self-modify its own instructions creates a persistence and trust-boundary problem: an agent could rewrite future behavior, bake in unsafe commands or paths, or silently alter reviewed content outside a controlled update process.

Content

Scanner excerpt · SKILL.md (reported line 67)May include surrounding context.

md
If a lamp was repaired, re-paired, or moved to another network, assume the `local_key` may have changed. Read `KEY_EXTRACTION.md` and `ONBOARDING.md`, refresh the key, test with the preferred CLI first (`lampctl <lamp> status`), then use `tuya_test_lamp.py --probe` if Python fallback is needed, and finally update `tuya_lamps.json`.

## Portability note
This skill intentionally prefers explicit standard project paths so it can still work after being copied into a separate OpenClaw skills directory. If a local installation uses a different layout, update this SKILL.md so the binary and project paths match that environment.

## Current live lamps
- `kitchen`

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

The onboarding/repair instructions tell the user to refresh keys, probe a lamp, and update tuya_lamps.json, and the file also includes a lampctl discover command. These behaviors can affect local device configuration and perform network discovery, but the markdown provides no explicit warning about those impacts on local system state or network activity.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

The description lists German trigger phrases such as 'Stehlampe an' and 'alle Lampen aus', and later maps German terms like an, aus, warmweiß, and kaltweiß to command arguments. This imposes a locale-specific interaction model in natural language without explicitly offering alternatives or documenting that the skill is intentionally German-only.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.