Back to skill

Security audit

KNX Gateway Automation

Security checks for vulnerabilities and agentic risk

Overview

The skill matches its smart-home automation purpose, but it gives an agent high-impact control over devices and persistent automations while defaulting to plaintext bearer-token HTTP.

Install only if you intend to let an agent manage this KNX gateway. Prefer HTTPS or an encrypted tunnel before using KNX_TOKEN, use a least-privilege token if the gateway supports it, and require explicit confirmation for deletes, lock/garage/window actions, scene execution, workflow enablement, webhook exposure, and any HTTP/MQTT/email destination.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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)

T09 · Insecure Skill Coding Practices

Warning
Location
ref/api.md:3
Finding

Bearer Authentication Token Transmitted Over Plaintext HTTP

Content
View full analysis
` ``` The same insecure configuration is presented in `SKILL.md`, where the default gateway URL uses HTTP while authentication uses the `KNX_TOKEN` Bearer credential: ```markdown | Parameter | Default | Description | |-----------|---------|-------------| | Base URL | `http://ycznwl.local/api/v1` | Default mDNS address — use as-is unless the user provides their own gateway address or IP | | Auth | `Authorization: Bearer ${KNX_TOKEN}` | See token instructions below | ``` ### Technical Analysis The Skill directs the agent to authenticate to the KNX gateway by transmitting a reusable Bearer token over unencrypted HTTP. Bearer tokens provide access based solely on possession; therefore, anyone who captures the token can generally reuse it without knowing another secret. A trusted LAN or VPN designation does not independently provide authenticated, end-to-end encryption between the agent and the gateway. On a local network, an attacker with traffic visibility may capture the Authorization header. An attacker capable of DNS or mDNS spoofing, ARP spoofing, malicious access-point operation, proxy manipulation, or gateway impersonation may also redirect or modify requests. The instruction to use the plaintext default address “as-is” increases the likelihood that credential-bearing requests will be issued without first establishing transport authenticity. ### Attack Path 1. The agent resolves `ycznwl.local` and connects to the gateway through the documented `http://` endpoint. 2. The agent sends `Authorization: Bearer ${KNX_TOKEN}` without transport encryption. 3. An attacker on the same networ ...[truncated 1411 chars]
Remediation
View remediation
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (14)

YARA rule 'agent_skill_mcp_tool_poisoning_metadata': MCP/tool metadata poisoning indicators in tool schemas or skill manifests [agent_skills]

High
Category
YARA Match
Confidence
80% confidence
Finding

YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).

Content

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

md
---
name: ycznwl-smarthome
description: >-
  Create, edit, validate, and manage KNX Gateway automation workflows and scenes
  via REST API. Covers device listing, device control, scene CRUD/execution,
  workflow CRUD, import/export, trigger/node configuration, and workflow lifecycle
  (enable/disable/execute). Use when building or modifying automations, generating
  workflows for import, creating/executing scenes, or controlling devices
  programmatically. Use when the user says "create automation", "build workflow",
  "control device", "automation API", "create scene", or "execute scene".
version: 1.0.6
compatibility:

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
| [ref/examples.md](ref/examples.md) | Realistic, validated workflow examples (incl. scene-based) |

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
| [ref/examples.md](ref/examples.md) | Realistic, validated workflow examples (incl. scene-based) |

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
81% confidence
Finding

This skill exposes a high-impact destructive operation that can delete scenes and their associated virtual devices, yet the reference provides no safety guardrails such as confirmation requirements, scoped permissions, or anti-abuse guidance. In an agent context, a prompt-influenced or mistaken parameter choice could cause irreversible home automation disruption affecting device control and dependent automations.

Content

Scanner excerpt · ref/api.md (reported line 175)May include surrounding context.

Delete Scene

text
DELETE /scenes/:uuid

Also removes the associated virtual device.

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
84% confidence
Finding

The documented workflow deletion endpoint enables permanent removal of automations, which is especially dangerous in an agent-operated tool because a mis-specified UUID, prompt injection, or ambiguous user request can disable critical household logic. The file includes execution and management capabilities, so this destructive primitive increases the blast radius of agent mistakes or abuse.

Content

Scanner excerpt · ref/api.md (reported line 374)May include surrounding context.

Delete Workflow

text
DELETE /automation/workflows/:uuid

Clone Workflow

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill advertises broad trigger phrases like "control device" and "create automation," which are common user intents and can cause the agent to invoke this high-privilege networked skill in ambiguous situations. Because the skill can execute REST actions against a smart-home gateway, over-broad routing increases the chance of unintended device control or automation changes from loosely related requests.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

This markdown file documents a DELETE endpoint for scenes and notes that it also removes the associated virtual device, but it does not present that behavior as a warning or caution. Because this operation affects user-managed objects and may be irreversible, the description should explicitly warn users before they invoke it.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The markdown describes a DELETE endpoint for workflows but provides no warning about data loss, recovery limitations, or the impact on existing automations. Since deletion is a destructive action that can affect user data and system behavior, the skill description should disclose this risk explicitly.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The documentation exposes a generic device control endpoint that can operate safety-relevant devices such as locks, garage doors, windows, curtains, HVAC, and scene activators, but it does not warn users or downstream agents to require confirmation, authorization, or contextual safety checks before issuing those actions. In a smarthome automation skill, this omission can lead to unsafe or unauthorized real-world actions being executed programmatically, especially by agents that treat the docs as sufficient operational guidance.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The examples expand the skill from KNX gateway automation management into arbitrary outbound integrations via MQTT publish and HTTP requests. In an agent-controlled environment, these examples normalize workflows that can exfiltrate device state, trigger requests to internal services, or be repurposed for SSRF-like access to LAN endpoints, which exceeds the manifest’s narrower stated purpose and increases abuse potential.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The documentation exposes workflow nodes that can send data and credentials to external systems via SMTP, MQTT, and arbitrary HTTP requests, which materially expands the skill from local KNX/REST automation into general outbound network operations. In an agent skill context, this can enable data exfiltration, unauthorized callbacks, SSRF-like access to internal services, and secret leakage if an agent is induced to generate or execute such workflows without strong trust boundaries.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The documentation explicitly states that scene actions continue executing after an intermediate failure, but it does not warn users that this can leave the home in a partially applied and potentially unsafe state. In a smart-home context, later actions may still unlock/lock doors, move curtains/blinds, or change HVAC/device states even when earlier prerequisite actions fail, increasing the risk of unintended physical or security-impacting outcomes.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
76% confidence
Finding

The sun-times endpoint example uses a specific timezone and locale context ("Asia/Shanghai" and Shanghai coordinates) as the sole illustrated value, which can bias implementations toward a fixed locale. Because the document does not clarify that timezone should be user-selected or environment-specific, it risks encouraging an unnecessary locale assumption.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file is a markdown document, so natural-language policy checks apply. Line L007 embeds the error text "未知节点类型 action:" in Chinese while the rest of the document is in English, with no indication that the skill is region-specific or that users can choose locale.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.