T06 · System Persistence
Error
- Location
- crons/active/calendar-health-check.md:1
- Finding
- Permanent Calendar Health-Check Scheduled Task## Vulnerability Details **File Location**: `crons/active/calendar-health-check.md`, lines 1-16 **Vulnerability Type**: Persistent scheduled task **Risk Level**: High ### Vulnerable Code ```yaml --- name: calendar-health-check type: permanent schedule: "0 4 * * 5" schedule_ist: "09:30 IST every Friday" timezone: Asia/Kolkata purpose: Check content calendar health — ensure 14 days ahead pipeline fire_once: false auto_delete: false status: active --- # Calendar Health Check — Permanent Fires every Friday at 09:30 IST. Check: how many days of approved/scheduled content exist per platform. < 14 days → advisory to owner with content suggestions. THIS FILE MUST NEVER BE DELETED. ``` ### Technical Analysis The configuration declares an active recurring task using `type: permanent`, `fire_once: false`, and `auto_delete: false`. It additionally instructs the Agent that the file must never be deleted. In a compatible runtime that automatically processes files under `crons/active/`, loading this Skill may register a task that continues to execute after the initiating session. The scheduled operation is limited to inspecting the content calendar and generating recommendations. No evidence indicates that this file directly creates an operating-system crontab, executes shell commands, accesses credentials, or contacts an external destination. Nevertheless, the unbounded cross-session schedule and explicit resistance to deletion constitute Skill-level persistence. ### Attack Path 1. A user installs or loads the Skill in a runtime that processes `crons/active/`. 2. The runtime reads the active cron metadata. 3. The schedule causes the calendar check to run every Friday. 4. `fire_once: false` permits repeated execution. 5. `auto_delete: false` retains the scheduled task after execution. 6. The non-deletion instruction directs the Agent to preserve the file indefinitely. 7. The task continues inspecting w ...[truncated 717 chars]
- Remediation
- ## Remediation Suggestions - Replace `type: permanent` with a bounded or explicitly user-managed lifecycle. - Default the task to inactive and require informed owner consent before registration. - Set an expiration date, maximum execution count, or renewal interval. - Remove `THIS FILE MUST NEVER BE DELETED`. - Permit automatic cleanup and provide a documented cancellation mechanism. - Do not register the schedule merely because the Skill is loaded. - Display the schedule, next execution time, data accessed, and cancellation controls before activation.
