T06 · System Persistence
Warning
- Location
- guides/bounty-hunters.md:16
- Finding
- Persistent Autonomous Bounty Monitoring Through HEARTBEAT.md<![CDATA[ ## Vulnerability Details **File Location**: `guides/bounty-hunters.md`, lines 16-21 **Vulnerability Type**: Persistent scheduled agent instruction **Risk Level**: Medium ### Vulnerable Code ```markdown ## 3. Pro Hunt (Cron) Edit `HEARTBEAT.md`: ``` Check ClawBounty open issues daily. ``` Hunt GH issues: `/gh-issues achilles/openclaw --label bounty` ``` ### Technical Analysis The guide instructs users to add a recurring task to `HEARTBEAT.md`. In an agent environment where this file controls periodic behavior, the instruction survives the current Skill invocation and causes the agent to perform daily bounty reconnaissance. This changes persistent agent state rather than providing a one-time, user-triggered command. The recurring instruction does not define an expiration date, resource limits, approved repositories, notification requirements, or a requirement to obtain confirmation before taking follow-up action. The behavior requires the user to follow the guide; the project does not silently edit `HEARTBEAT.md`. Nevertheless, the documented workflow establishes cross-session persistence and therefore matches `T06: System Persistence`. ### Attack Path 1. A user installs the Skill and follows the “Pro Hunt (Cron)” instructions. 2. The user or agent writes `Check ClawBounty open issues daily.` into `HEARTBEAT.md`. 3. The host agent reads the persistent heartbeat configuration during later sessions. 4. The agent repeatedly queries bounty or GitHub issue sources without a fresh request for each run. 5. If later automation acts on results, the persistent task may trigger additional external operations under the user’s existing agent and service permissions. ### Impact Assessment The persistent instruction can consume recurring compute, network, API-rate-limit, and agent resources. It may repeatedly access external bounty services and GitHub using the permissions already available to the host agent. No privilege escalation or credential theft is ...[truncated 173 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Remove the instruction to modify `HEARTBEAT.md` and make bounty discovery an explicitly user-triggered operation. - If recurring checks are a required feature, obtain informed opt-in before changing persistent state. - Define the exact repositories, services, frequency, maximum runtime, and network operations permitted for each check. - Add an expiration date or bounded execution count. - Require explicit user approval before claiming a bounty, modifying a repository, opening a pull request, publishing content, or initiating any payment-related action. - Document the exact procedure for disabling the task and removing the heartbeat entry. - Record each scheduled execution in an auditable log and notify the user when it runs. ]]>
