Back to skill

Security audit

Dyson Fan Control

Security checks across malware telemetry and agentic risk

Overview

The skill appears to do what it claims: set up and control Dyson devices, with understandable but sensitive local credential storage and heater-control risks.

Install only if you are comfortable giving the tool Dyson account setup access and storing device-control credentials locally under ~/.dyson/config.json. Protect that file with restrictive permissions, remove it if you stop using the skill, and use heater commands only when you can supervise the device.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Lp3

Medium
Category
MCP Least Privilege
Confidence
73% confidence
Finding
The skill documentation indicates local file read/write capabilities but does not declare them as permissions, which creates a transparency and trust problem for users and for any permission-gating system. In this context, the writes are especially sensitive because the broader skill behavior includes storing device serials, credentials, and IP addresses in local configuration, so undeclared persistence can expose secrets or bypass expected review controls.

Tp4

High
Category
MCP Tool Poisoning
Confidence
94% confidence
Finding
The documented purpose says the skill controls Dyson devices locally over MQTT on the same Wi‑Fi, but the actual behavior also includes cloud login, OTP/password handling, device inventory retrieval, local credential storage, and network reachability checks. This mismatch is dangerous because it conceals materially more sensitive operations than users would expect, increasing the risk of credential exposure, unauthorized account access, and overbroad trust in a seemingly local-only skill.

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The README instructs users to authenticate with their Dyson account, retrieve device credentials, and store them in ~/.dyson/config.json, but it does not warn that these are sensitive secrets or describe how to protect them. Exposing account passwords during setup or leaving local credential files with weak permissions could enable unauthorized control of devices and disclosure of account-linked information.

Missing User Warnings

Medium
Confidence
85% confidence
Finding
The skill provides direct commands to enable heating and change target temperature without any warning, confirmation, or safety constraints. Because this is a real-world heater control skill, misuse or accidental invocation could create fire, burn, or unattended-heating risks, making the physical context significantly more dangerous than a typical software-only action.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The setup flow stores Dyson cloud-derived device credentials, serials, and related metadata to a local config file without any explicit warning, consent, or visible protection in this code path. Those credentials appear sufficient to control devices over the local network, so compromise of the config file could allow unauthorized control of heaters/fans and leakage of device-identifying information.

VirusTotal

66/66 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.