T07 · Tool Hijacking and Spoofing
- Location
SKILL.md:8- Finding
Unverified Execution of External Tools from Mutable Workspace Paths
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
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.
SKILL.md:8Unverified Execution of External Tools from Mutable Workspace Paths
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.
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`
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.
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.
No suspicious patterns detected.