T06 · System Persistence
- Location
SKILL.md:91- Finding
Persistent Daily CRM Synchronization Through a Scheduled Task
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 91-100
Vulnerability Type:T06: System Persistence
Risk Level: HighVulnerable Code:
bash openclaw cron add \ --name "crm-daily-sync" \ --every 24h \ --session isolated \ --message "Run personal-crm skill: sync today's calendar events to CRM board, update Last Contact and Next Meeting for all attendees. If new contacts found, add them. Silent if no changes." \ --timeout-seconds 120Technical Analysis
The Skill directs the user or agent to register a recurring OpenClaw cron task. Unlike an operation limited to the current invocation, this task survives the Skill run and automatically executes every 24 hours.
The scheduled instruction accesses calendar information, updates CRM records, and creates records for newly discovered contacts. The
--session isolatedsetting isolates individual runs but does not remove the persistence or limit the number of future executions. The instruction to remain silent when no changes occur also reduces routine visibility into execution.Daily synchronization is related to the declared CRM functionality, but automatic installation exceeds the privileges required for an on-demand CRM query or one-time synchronization. Persistence should therefore be an explicit, separately authorized feature rather than a default setup action.
Attack Path
- A user or agent loads the Skill and follows its cron setup instructions.
openclaw cron addregisters thecrm-daily-synctask.- The task survives the original Skill session and starts a new isolated run every 24 hours.
- Each run accesses the configured calendar and monday.com CRM resources.
- Meeting-attendee information is processed, existing contact records are changed, and new contact records may be created without per-run approval.
- Processing continues until the scheduled task is explicitly removed, including after the user n ...[truncated 682 chars]
- Remediation
View remediation
Remediation Suggestions
- Do not register the scheduled task automatically when the Skill is loaded or first invoked.
- Require explicit, informed user confirmation immediately before running
openclaw cron add. - Clearly disclose the schedule, accessed data, external services, expected record changes, and retention behavior.
- Provide and document the exact command required to inspect and remove the scheduled task.
- Prefer on-demand synchronization by default, with recurring synchronization as an optional feature.
- Support an expiration date, bounded execution count, or periodic reauthorization.
- Use dedicated, least-privileged credentials with read-only Google Calendar access and only the necessary monday.com board permissions.
- Produce an auditable execution log and notify the user of material changes rather than operating entirely silently.
