Back to skill

Security audit

Operator Dashboard

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed OpenClaw monitoring helper with some operational authority, but its sensitive actions are purpose-aligned and require user approval.

Install this only if you want the agent to inspect OpenClaw gateway status, sessions, cron jobs, plugins, and host resource usage, and to send status or critical alerts in the active channel. Review scheduled summaries and any proposed fix command carefully before approving restarts, retries, reinstalls, or log deletion.

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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (5)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The trigger list includes broad natural-language phrases such as 'status', 'is everything working', and 'system health', which can cause the skill to activate in unintended contexts. Because this skill performs health checks, sends messages proactively, and can propose remediation workflows, accidental invocation may expose operational details or generate unsolicited actions/alerts.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill claims zero configuration and instructs 'MUST NOT' parse OpenClaw config for channel detection (L017, L052), yet the edge-case guidance later directs the agent to read timezone from OpenClaw config at gateway.timezone (L226). This is an intent-level contradiction because the documentation simultaneously rejects config parsing as an approach while depending on config parsing to implement quiet hours.

Content

No source excerpt is available for this finding.

Unbounded Output

Medium
Category
Output Handling
Confidence
80% confidence
Finding

The skill is designed for proactive alerts and scheduled daily summaries in the current channel, but it does not define robust rate limiting, deduplication, or hard caps beyond general guidance not to spam. In a noisy failure condition or ambiguous trigger context, this can lead to repeated unsolicited messages, causing channel flooding and alert fatigue, which degrades availability and can mask genuinely critical events.

Content

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

md
### MUST NOT DO (never)
- Hardcode Telegram chat IDs, environment variables, or other channel‑specific config.
- Spam the channel — routine summaries are daily, immediate alerts only for real problems.
- Build a web UI, Grafana dashboard, or any external interface.
- Assume the user uses Telegram — work with whatever channel the current conversation uses.
- Report trivial warnings as urgent — use judgment.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The file states at L052 that the skill must not parse OpenClaw config for channel detection and should rely on the current conversation context, but later says routine summaries should be sent to the 'detected channel' (L127), that alerts may go to 'the channel configured for the cron job' (L108), and earlier claims zero configuration detects the channel from OpenClaw config (L017). These instructions actively conflict about whether channel routing should come from conversation context, cron configuration, or parsed config.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
98% confidence
Finding

The instruction "Use UK English" forces a specific language/locale variant for all responses. This is a natural-language policy concern because it removes user choice and does not document a region-specific reason for the restriction.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.