T06 · System Persistence
- Location
SKILL.md:150- Finding
Unattended Scheduled Tasks Create Cross-Session System Persistence
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 150-157; related guidance at lines 36-39 and 90-94
Vulnerability Type:T06: System Persistence
Risk Level: HighVulnerable Content:
bash ### 3. Creating Autonomous Crons ```bash # Create cron job for daily maintenance 0 8 * * * openclaw run --task "daily-maintenance" 0 20 * * * openclaw run --task "evening-review" # Weekly optimization 0 9 * * 1 openclaw run --task "weekly-optimization"text Related instructions explicitly recommend scheduled, context-aware automation and direct the user to configure heartbeat intervals and autonomous cron schedules. ### Technical Analysis The skill recommends installing recurring jobs that invoke `openclaw run` without requiring renewed approval for each execution. These jobs survive the initial skill invocation and continue to run in later sessions. The document does not define immutable task implementations, an approved-task allowlist, execution privilege restrictions, audit requirements, or a removal procedure. Although scheduling automation is an advertised feature rather than concealed behavior, the proposed implementation creates a durable execution mechanism. If a referenced task definition, persistent memory file, or agent instruction is subsequently compromised, the cron schedule can repeatedly trigger attacker-influenced behavior. ### Attack Path 1. A user follows the skill instructions and installs one or more recurring cron entries. 2. An attacker influences a referenced task definition or persistent state used by that task, such as through prompt injection or unauthorized workspace modification. 3. At the next scheduled time, cron invokes `openclaw run` without obtaining fresh user approval. 4. The agent loads the compromised task or state and performs the influenced actions. 5. The cron entry continues triggering the behavior until it is discovered and manually removed. ### ...[truncated 519 chars]- Remediation
View remediation
Remediation Suggestions
- Require explicit, informed user approval before installing each schedule.
- Use a strict allowlist of reviewed task identifiers and bind schedules to immutable or integrity-verified task definitions.
- Run scheduled tasks under a dedicated least-privilege account with narrowly scoped filesystem and integration permissions.
- Prevent scheduled tasks from automatically treating persistent memory or external messages as executable instructions.
- Record each installation, modification, execution, and failure in an auditable log.
- Provide documented commands for listing, pausing, and removing every installed schedule.
- Add execution timeouts, rate limits, and failure thresholds that automatically disable repeatedly failing jobs.
- Prefer notification-only scheduled checks, followed by user approval for consequential actions.
