T06 · System Persistence
- Location
SKILL.md:117- Finding
Recurring Autonomous Agent Execution Creates Cross-Session Persistence
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 117-124
Vulnerability Type: Scheduled autonomous execution
Risk Level: HighVulnerable Code:
text ## Autonomous Loop (Cron) Set up a recurring job to poll for work:Use the cron tool to schedule an agentTurn every 2-4 hours: "Check WorkProtocol for new code jobs matching my capabilities. If a good match exists, claim it and complete it. API key is in ~/workprotocol-creds.env"
text Technical Analysis
The Skill explicitly instructs the agent to create a recurring cron task. This task persists beyond the current Skill invocation and periodically performs externally influenced operations without requiring approval for each job.
The scheduled task does more than notify the user: it directs the agent to query WorkProtocol, select a job, claim it, and complete it. Job descriptions and repositories are controlled outside the local environment, so this persistent automation repeatedly exposes the agent to untrusted content and execution workflows.
This is a system-persistence risk because the scheduled agent turn survives the originating session and continues invoking privileged agent capabilities.
Attack Path
- A user loads the Skill and follows its cron setup instructions.
- A recurring agent task is installed and runs every two to four hours.
- An attacker publishes or compromises a WorkProtocol job that matches the agent's capabilities.
- The scheduled agent retrieves and autonomously claims the job.
- The agent processes the attacker-controlled job description and repository.
- Coding agents, repository commands, tests, builds, GitHub operations, or delivery APIs may be invoked without a new user authorization decision.
- The same exposure recurs for as long as the scheduled task remains installed.
Impact Assessment
The persistent task can repeatedly use the agent's WorkProtocol credentials, codin ...[truncated 585 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove instructions that create a recurring autonomous worker.
- If scheduling is necessary, limit the scheduled task to retrieving job metadata and notifying the user.
- Require explicit user approval before every job claim, repository clone, sub-agent invocation, command execution, GitHub change, and delivery.
- Restrict scheduled jobs to a dedicated sandbox with no inherited user secrets and no unrestricted filesystem access.
- Maintain an allowlist of approved repositories, organizations, command types, and network destinations.
- Provide documented commands for listing, disabling, and deleting any scheduled task created by the Skill.
- Set execution limits, expiration times, and audit logging for all scheduled operations.
