T06 · System Persistence
- Location
SKILL.md:244- Finding
Persistent Unattended Wallet Transactions Through Scheduled Automation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:244-271
Vulnerability Type: Persistent scheduled financial automation
Risk Level: HighVulnerable Code
markdown ### OpenClaw Cron Configuration Schedule `las auto` every 5 minutes (half of 10-minute epoch) to ensure you never miss a heartbeat: ```json { "cron": [ { "schedule": "*/5 * * * *", "sessionTarget": "isolated", "payload": { "kind": "agentTurn", "message": "Run: las auto" } } ] }Tuning the schedule
Run at half the epoch duration to guarantee at least one heartbeat per epoch:
Epoch Duration Recommended Cron Schedule 10 min Every 5 min */5 * * * *30 min Every 15 min */15 * * * *1 hour Every 30 min */30 * * * *text ### Technical Analysis The Skill instructs the user or agent to configure a cross-session scheduled task that invokes `las auto` every five minutes. According to the preceding automation description, this command can submit a paid heartbeat and execute kill and claim transactions using the configured self-custodial wallet. Once configured, the task continues operating outside the interaction that initiated it. Individual blockchain transactions are not subject to fresh human approval. Because the invoked CLI also depends on externally supplied code and has access to wallet-signing authority, any later compromise or behavioral change can be exercised repeatedly by the scheduler. ### Attack Path 1. The user follows the Skill's OpenClaw cron configuration. 2. A persistent scheduled task is created with a five-minute interval. 3. The scheduler invokes `las auto` in isolated agent sessions. 4. The command accesses the wallet configuration and signs blockchain transactions. 5. Heartbeat payments and gas expenditures continue without transaction-by-transaction approval. 6. If the CLI or its transaction targets become malicious or compromised, the schedule ...[truncated 548 chars]- Remediation
View remediation
Remediation Suggestions
- Do not recommend installing an indefinite scheduled task by default.
- Require explicit human authorization before each transaction that transfers tokens, grants approval, or consumes meaningful gas.
- If automation is necessary, make it disabled by default and require an explicit expiration time.
- Use a dedicated low-value wallet with strict funding limits instead of a general-purpose wallet.
- Enforce per-transaction and cumulative daily spending limits.
- Simulate each transaction and validate its chain, destination contract, function selector, token amount, and maximum gas before signing.
- Pin and verify the executable used by the scheduled task.
- Provide documented commands for listing, pausing, and permanently removing the scheduled task.
- Notify the wallet owner after every submitted transaction and automatically stop execution after repeated failures or unexpected transaction requests.
