T06 · System Persistence
- Location
SKILL.md:43- Finding
Persistent Autonomous Cron Job Without Expiration or Removal Guidance
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 43-60
Vulnerability Type: Persistent scheduled task
Risk Level: MediumVulnerable Code
markdown **Cron Setup** Run this command once in the browser console as the claw user. Replace `[YOUR_TIMEZONE]` with your timezone. Common examples: `America/New_York`, `Europe/London`, `Africa/Nairobi`, `Asia/Singapore`. Full timezone list: [https://en.wikipedia.org/wiki/List_of_tz_database_time_zones](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). Use the value in the TZ identifier column.PATH=/home/claw/.npm-global/bin:$PATH openclaw cron add --name "Weekly Content Brief" --cron "0 8 * * 1" --message "Show me this week's content brief" --tz "[YOUR_TIMEZONE]" --announce
text Confirm it was created:PATH=/home/claw/.npm-global/bin:$PATH openclaw cron list
text The job should appear with status `idle`. It will run automatically next Monday at 8 AM.Technical Analysis
The installation procedure creates a recurring OpenClaw cron job that persists beyond the session in which the skill is configured. It automatically invokes an agent every Monday and enables announcement behavior.
Although recurring execution is an advertised feature, the setup does not provide an expiration date, execution limit, disable procedure, or removal command. It also does not require per-run confirmation before accessing local information and initiating outbound messaging. Consequently, the task may continue operating after the user has forgotten about it or no longer expects it to run.
Attack Path
- A user follows the documented setup instructions as the
clawuser. openclaw cron addregisters a persistent weekly task.- The task survives the original interaction and activates the agent every Monday.
- Each activation causes the skill to access local files and prepare an externally delivered message.
- The execution co ...[truncated 647 chars]
- A user follows the documented setup instructions as the
- Remediation
View remediation
Remediation Suggestions
- Require explicit informed consent immediately before creating the recurring task.
- Provide exact commands for disabling and permanently removing the cron job.
- Support an expiration date, maximum execution count, or default trial period.
- Display the execution schedule, accessed resources, destination, and recipient before installation.
- Require confirmation before each external transmission, or provide a clearly documented opt-in for autonomous delivery.
- Record executions in an accessible audit log and notify the user how to review them.
- Allow users to test the brief without installing a persistent schedule.
