Back to skill

Security audit

Task Scheduler

Security checks for vulnerabilities and agentic risk

Overview

This scheduler skill is coherent, but it can create persistent tasks that read local memory files and send reports to Feishu without clearly defined approval or data limits.

Review this skill carefully before installing. It should only be used where scheduled jobs are allowed to persist, read specifically approved files, and send to approved Feishu destinations; ask the publisher to add explicit confirmation, source-file allowlists, redaction, and deletion safeguards.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:65
Finding
Unrestricted Automatic Access to Agent Memory with External Transmission## Vulnerability Details **File Location**: `SKILL.md`, lines 65-73 **Vulnerability Type**: `T05: Unauthorized Access and Privilege Escalation` **Risk Level**: Medium **Relevant excerpt translated into English:** ```text Task name: Morning report Execution time: Every day at 07:30 Execution content: Read yesterday's memory, generate a report, and send it through Feishu Notification channel: Feishu message ## Notes - When a task executes, it automatically reads related files (memory/yesterday.md) - Important failed tasks are automatically retried, up to three times - Task execution results are recorded in logs ``` ### Technical Analysis The Skill documentation instructs scheduled tasks to access Agent memory automatically and permits the resulting report to be transmitted through Feishu. It does not require explicit authorization for each memory source, define a strict path allowlist, limit which data may be extracted, or require redaction before external transmission. The phrase “related files” is broader than the specific scheduling function requires. Consequently, an implementation following these instructions could cross least-privilege boundaries by reading sensitive memory content unrelated to the requested task. Recording task results in logs introduces an additional location where extracted information could persist. The package contains only documentation and metadata, so the reviewed files do not demonstrate an executable implementation of this behavior. The risk arises from the documented behavior that an Agent or downstream implementation may follow. ### Attack Path 1. A user or attacker creates a recurring report task that requests information derived from Agent memory. 2. The task executes unattended at its scheduled time. 3. Following the Skill instructions, it reads `memory/yesterday.md` or other files considered “related.” 4. Sensitive content from those files is incorporated into the generat ...[truncated 995 chars]
Remediation
## Remediation Suggestions 1. Require explicit user approval before a scheduled task reads any memory file or transmits generated content externally. 2. Replace “related files” discovery with an exact allowlist of approved paths, normalized and validated against a fixed memory directory. 3. Apply least privilege by granting each task access only to the specific files required for that task. 4. Display the selected source files, destination, and generated report in a confirmation preview before enabling recurring execution. 5. Detect and redact credentials, access tokens, personal information, and other secrets before reports are transmitted or logged. 6. Record only minimal operational metadata in logs; do not log memory contents or complete outbound messages by default. 7. Validate Feishu recipients and require confirmation when a destination changes. 8. Ensure retries are idempotent and do not resend a message unless delivery status is known. 9. Maintain an audit trail identifying the task owner, approved files, destination, execution time, and authorization decision. 10. Provide a mechanism to revoke file and notification permissions independently for every scheduled task.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Vague Triggers

Medium
Confidence
94% confidence
Finding
The trigger list includes very broad phrases such as '自动化' and '提醒', which can match many ordinary user requests and cause the skill to activate unexpectedly. In a scheduling skill, unintended activation is risky because it can create, modify, or delete persistent tasks or send notifications without the user clearly intending to use this skill.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The skill advertises deletion and external notification capabilities but does not clearly warn users that actions may remove tasks or send content to external channels like Feishu. In this context, the danger is increased because scheduled jobs are persistent and may automatically read files and transmit generated content later, amplifying the impact of accidental or misunderstood commands.

Natural-Language Policy Violations

Low
Confidence
78% confidence
Finding
The user-facing description and trigger wording are entirely in Chinese, with no indication that other languages are supported or that the language choice is optional. Under the policy, a fixed language/locale should be opt-in or clearly justified as region-specific.

Static analysis

No suspicious patterns detected.