Back to skill

Security audit

CPMO 日报自动化

Security checks for vulnerabilities and agentic risk

Overview

This daily-report skill is not malicious, but it should be reviewed because it can automatically read broad personal/work data and write or sync summaries to Feishu.

Install only if you intend this skill to run as an automated Chinese-language CPMO workflow with access to the named Notes, calendars, reminders, local ledger files, and Feishu base. Before enabling cron, scope the Calendar and Reminders queries, confirm the Feishu destination, and require review before any Notes or Feishu write-back.

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:39
Finding
Overbroad Collection of Calendar and Reminder Data## Vulnerability Details **File Location**: `SKILL.md`, lines 39-53 **Vulnerability Type**: Excessive access to local calendar and reminder data **Risk Level**: Medium ### Vulnerable Code ```bash osascript -e 'tell application "Calendar" to get {summary, start date} of every event of calendar "张洋的日历 "' ``` ```bash remindctl show --json ``` ### Technical Analysis The documented purpose is to retrieve calendar events for the current day and reminders due within one week from two specified lists. However, the commands retrieve every event from the selected calendar and all reminders available to `remindctl`. Filtering is expected to occur only after the complete datasets have entered the agent's processing context. This violates least-privilege and data-minimization principles. Unrelated personal or corporate records may be exposed to the agent even though they are unnecessary for generating the daily report. The issue does not bypass macOS permission controls or grant privileges beyond those already assigned to the executing process, but it uses those granted privileges more broadly than the task requires. ### Attack Path 1. A user, cron job, or other configured trigger starts the morning or evening reporting workflow. 2. The skill executes the documented Calendar and Reminders commands under the permissions of the current macOS user. 3. The Calendar command returns every event in the named calendar rather than only events within the current day. 4. `remindctl show --json` returns reminders outside the required lists and one-week deadline window. 5. The excessive data enters the agent context before filtering. 6. Sensitive unrelated information may be incorporated into generated output, retained in execution logs, or accidentally transmitted through the documented Feishu reporting workflow. ### Impact Assessment The exposed scope can include event titles and start times across the complete history or future sc ...[truncated 511 chars]
Remediation
## Remediation Suggestions 1. Restrict Calendar queries at the source to the required start and end timestamps instead of retrieving every event and filtering afterward. 2. Query only the two required reminder lists and apply the one-week due-date boundary before returning records to the agent. 3. Return only fields needed for the report, such as title, due time, status, and calendar or list name. 4. Exclude notes, attendees, URLs, locations, and other sensitive metadata unless explicitly required. 5. Add an explicit review or confirmation step before externally synchronizing report content to Feishu. 6. Prevent raw command output from being stored in logs or persistent agent state. 7. Document the exact macOS permissions required and deny access to unrelated calendars and reminder lists where platform controls permit. 8. Add tests confirming that records outside the configured date range and source lists never enter the agent context.
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)

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The skill directs the agent to read sensitive personal/work data from Apple Notes, Calendar, Reminders, and local files on every run, but it does not warn the user that these sources will be accessed. This creates a privacy risk because the skill can aggregate and expose more data than a user may expect, especially when triggered automatically by cron.

Missing User Warnings

Medium
Confidence
98% confidence
Finding
The skill not only reads data but also appends to Apple Notes and creates or updates Feishu records without an explicit warning that user data will be modified or transmitted to an external service. Silent modification and syncing increase integrity and privacy risk because incorrect summaries, prompt-injected content, or sensitive information could be written back and propagated automatically.

Natural-Language Policy Violations

Low
Confidence
88% confidence
Finding
The skill instructions, prompts, and manual trigger phrases are all Chinese-only, which effectively forces a single language experience. There is no opt-in language choice or explicit statement that the skill is intentionally limited to a Chinese-speaking or China-region context.

Static analysis

No suspicious patterns detected.