T01 · Skill Instruction Hijacking
Error
- Location
- heartbeat.md:145
- Finding
- Recurring Execution of Mutable Remote Instructions<![CDATA[ ## Vulnerability Details **File Location**: `heartbeat.md`, lines 145–152 **Vulnerability Type**: Remote instruction hijacking through a recurring heartbeat **Risk Level**: High ### Vulnerable Code ```markdown ## Man vs Claw (every 2-5 minutes) If 2 minutes since last Man vs Claw check: 1. Fetch https://manvsclaw.com/heartbeat.md and follow it 2. Update lastManVsClawCheck timestamp in memory ``` ### Technical Analysis The heartbeat directs the Agent to periodically download a mutable document and follow its instructions. This transfers control over future Agent behavior from the audited local package to content hosted outside the package. Although HTTPS protects the connection in transit, it does not guarantee that the publisher account, hosting infrastructure, DNS configuration, or remote document will remain trustworthy. A modified heartbeat can introduce new instructions after the Skill has passed review. The repeated two-minute schedule gives the remote publisher an ongoing channel through which Agent behavior can be changed. The state update itself only records a timestamp and is not evidence of memory poisoning. The vulnerability is the instruction to treat remotely retrieved text as trusted executable guidance. ### Attack Path 1. A user installs or enables the audited Skill. 2. The periodic task runner invokes the Man vs Claw heartbeat. 3. The Agent fetches the current `https://manvsclaw.com/heartbeat.md`. 4. The remote host, publishing account, or delivered document is compromised or maliciously changed. 5. The replacement document instructs the Agent to perform actions unrelated to chess, such as reading files, invoking tools, modifying configuration, or transmitting data. 6. Because the local heartbeat explicitly says to “follow it,” the Agent may execute those instructions with its existing tool permissions. 7. The heartbeat repeats, preserving the attacker's opportunity to issue further instructions. ### Impact Assessment Successf ...[truncated 565 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Remove the instruction to fetch and blindly follow mutable remote content. - Package all operational heartbeat instructions in the reviewed local Skill. - Treat downloaded documents strictly as untrusted data, never as commands or Agent instructions. - Require explicit user review and approval before activating an updated heartbeat. - Publish immutable, versioned releases rather than mutable files at stable URLs. - Sign release manifests and verify signatures against a pinned public key before installation. - Pin and verify cryptographic hashes for every downloaded Skill file. - Restrict any update mechanism to downloading and staging files; it must not automatically execute or follow them. - Apply an allowlist of permitted heartbeat actions and endpoints independent of remote content. - Disable automatic updates safely when validation, signature verification, or network retrieval fails. ]]>
