T06 · System Persistence
- Location
SKILL.md:93- Finding
Recurring OS-Level Scheduled Task Creates Cross-Session Persistence
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:93-101
Vulnerability Type:T06: System Persistence
Risk Level: HighVulnerable Code
bash # Linux/macOS crontab(每 15 分钟检查一次) */15 * * * * openclaw agent --message "检查预测市场变化"powershell # 创建每 15 分钟检查任务 schtasks /create /tn "预测市场监控" /tr "openclaw agent --message '检查预测市场变化'" /sc minute /mo 15Technical Analysis
The documented commands instruct users to register recurring operating-system tasks that invoke OpenClaw every 15 minutes. The cron entry and Windows scheduled task survive the original Skill invocation and continue operating across user sessions.
Periodic monitoring is relevant to the declared prediction-market alert functionality, and the commands are presented as optional examples rather than commands executed automatically by bundled code. Nevertheless, OS-level persistence is not necessary for the Skill's manual query functionality and exceeds the minimum privileges required for a single invocation.
The instructions do not define an expiration time, execution limit, explicit confirmation workflow, failure backoff, logging policy, or corresponding removal procedure. Consequently, a user who follows the examples may unintentionally authorize indefinite unattended Agent execution. The documentation also describes monitoring as automatically enabled elsewhere while later stating that scheduled checks are optional and externally configured, which may obscure the persistence implications.
Attack Path
- A user follows the scheduled-monitoring instructions in
SKILL.md. - The user adds the cron entry or executes the
schtasks /createcommand. - The operating system stores the recurring task under the user's account.
- Every 15 minutes, the task starts
openclaw agentwithout a new interactive request. - The Agent loads the Skill instructions, reads local source and trigger configuration, and requests the configur ...[truncated 1221 chars]
- A user follows the scheduled-monitoring instructions in
- Remediation
View remediation
Remediation Suggestions
-
Default to manual invocation and clearly state that installation does not automatically enable background monitoring.
-
Prefer an OpenClaw-native scheduler with narrowly scoped permissions over operating-system cron or Task Scheduler persistence.
-
Require explicit, informed confirmation immediately before creating any recurring task.
-
Use a finite expiration time or execution count by default, with indefinite monitoring requiring a separate opt-in.
-
Apply minimum practical frequency, API rate limits, failure backoff, execution timeouts, and message deduplication.
-
Log each unattended execution and make task status visible to the user.
-
Provide exact removal instructions. For Windows, document:
powershell schtasks /delete /tn "预测市场监控" /fFor Unix-like systems, assign the entry a unique marker and document how to remove only that marked cron entry.
-
Ensure the scheduled process runs as an unprivileged user and cannot access tools or credentials unrelated to prediction-market monitoring.
-
Pin or validate the Skill and source configuration used by unattended runs so later unauthorized modifications are not silently exercised.
-
Reconcile the conflicting documentation that describes monitoring as automatically enabled while also describing scheduling as optional.
-
