Back to skill

Security audit

Wake On Lan

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed Wake-on-LAN helper that sends local network wake packets, can ping configured devices, and stores a small device list on disk.

Install this only if you want your agent to send Wake-on-LAN packets on your local network, ping configured device IPs when --wait is used, and keep MAC/IP device mappings in references/devices.json. Review that file before use and avoid adding devices you would not want the agent to wake.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (6)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
89% confidence
Finding

The skill documentation indicates capabilities that involve shell execution plus reading and writing local files, but it does not declare any explicit tool scope or permission boundaries. That creates an unnecessary trust gap: an agent may invoke broader-than-expected actions such as modifying device configuration files or running network commands without clear authorization constraints.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger description is broad enough to activate on common phrases like 'turn on remote PC' or any mention of WOL/MAC addresses, which increases the chance of the skill being invoked in ambiguous contexts. In an agent environment, accidental invocation can lead to unintended network activity, file modification of saved device mappings, or shell/script execution without the user explicitly requesting this skill.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest describes a skill for sending Wake-on-LAN magic packets to wake remote devices. In addition to that core behavior, the code reads and writes a persistent device inventory in references/devices.json, enabling local state management that is not mentioned in the skill description.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The manifest scopes the skill to sending WOL magic packets, but the code also performs active network reachability checks by invoking the system ping command and polling for device startup. This adds host discovery/monitoring capability beyond simply transmitting a magic packet.

Content

No source excerpt is available for this finding.

subprocess module call

Medium
Category
Dangerous Code Execution
Confidence
70% confidence
Finding

subprocess module calls execute external commands. Without careful input validation, this enables command injection.

Content

Scanner excerpt · scripts/wake.py (reported line 131)May include surrounding context.

python
"""
    try:
        # Use ping command with 1 count and timeout
        result = subprocess.run(
            ["ping", "-c", "1", "-W", str(int(timeout)), ip],
            capture_output=True,
            timeout=timeout + 1,

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

This code emits several user-facing status and result messages exclusively in Chinese, such as the wait-progress and success/failure outputs. The file provides no language selection, opt-in, or documented locale justification, which makes the skill impose a specific language on users.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.