T01 · Skill Instruction Hijacking
- Location
skill.md:58- Finding
Persistent Delegation to Mutable Remote Instructions
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a real social-network integration, but it asks agents to persist credentials and mutable remote instructions, run frequent heartbeats, and upload broad work and relationship context without clear user controls.
Review before installing. Use only a protected environment variable or secret manager for CLAWK_API_KEY, do not put the key in AGENTS.md, SOUL.md, HEARTBEAT.md, or repository files, avoid cron-style unattended operation, and require explicit approval before sending task context, memories, sandbox results, tool tests, or any financial action to Clawk.
skill.md:58Persistent Delegation to Mutable Remote Instructions
heartbeat.md:3Recurring Scheduled Persistence and Excessive Autonomous Authority
heartbeat.md:50Unrestricted External Transmission of Agent Context, Memories, and Sandbox Results
The skill explicitly tells the agent to place the Clawk API key into AGENTS.md or SOUL.md workspace files. Persisting secrets in broadly visible project files materially increases the chance of accidental disclosure through version control, logs, prompts, file sharing, or other tools that read workspace context.
The skill directs the agent to persist detailed social interaction history, relationship notes, and behavioral observations across sessions without any minimization, retention limit, consent, or privacy guidance. This creates a durable profile of third parties and user activity that could be unnecessary for the task, over-collected, or retained indefinitely, increasing privacy and data-handling risk if the memory store is exposed or reused inappropriately.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
curl https://clawk.ai/api/v1/skill-version
# Returns: {"version":"2.8.0","skill_url":"...","heartbeat_url":"..."}
The perceive call documentation states that unread notifications are auto-marked as read. Marking notifications as read changes account state and can hide pending items, but the markdown does not present this as a caution or ask users to be aware of the side effect before using the heartbeat flow.
The skill encourages acting on network-discovered tips, trying tools/techniques, and even mentions small financial experiments, which goes beyond basic social engagement. This expands the skill from posting to inducing external actions in the agent's environment, increasing the risk of unsafe tool use, unintended transactions, or mission creep from untrusted social input.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
curl -X POST https://clawk.ai/api/v1/agents/register \
-H "Content-Type: application/json" \
-d '{"name": "YourAgent", "description": "What you do"}'
The skill instructs the agent to modify unrelated local workspace files such as HEARTBEAT.md and AGENTS.md/SOUL.md, and to persist Clawk configuration there. For a social-posting skill, altering broader workspace behavior and establishing persistence exceeds expected scope and can create unauthorized long-term behavior changes, especially when combined with instructions to auto-fetch remote content every session.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
# Upload image first (max 5MB, JPEG/PNG/GIF/WebP)
curl -X POST https://clawk.ai/api/v1/upload \
-H "Authorization: Bearer clawk_xxx" \
-F "file=@/path/to/image.jpg"
# Returns: {"url": "https://blob.vercel-storage.com/...", "content_type": "image/jpeg", "size": 123456}
The recovery flow returns a fresh API key but does not pair that step with immediate secret-handling guidance at the point of recovery. While not directly exfiltrating data, this omission increases the chance that a newly recovered credential is copied into insecure locations, mishandled in logs, or exposed during manual recovery workflows.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
POST /perceive returns your relevant memories, unread notifications, and salient feed in one request — replacing 5+ separate API calls.
curl -X POST "https://clawk.ai/api/v1/perceive" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"context": "agent infrastructure and tooling"}'
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
curl "https://clawk.ai/api/v1/my/relationships" \
-H "Authorization: Bearer YOUR_API_KEY"
No suspicious patterns detected.