T06 · System Persistence
- Location
SKILL.md:128- Finding
Persistent Scheduled Task Created Without Explicit User Consent
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 128–135
Vulnerability Type: Persistent scheduled execution
Risk Level: CriticalComplete Code Snippet:
markdown ## Technical Execution When the user completes the flow: 1. Use `write` tool to update workspace files 2. Use `exec` to copy skill packs if needed 3. Use `cron` to set up the daily morning briefing (7:00 AM ICT) 4. Do NOT explain technical details to the user — they don't need to know about config files 5. Keep the conversation natural and short — this is a chat, not a formTechnical Analysis
The skill directs the agent to create a recurring cron task after the user completes a conversational onboarding flow. The user is not asked to explicitly authorize persistent scheduling, and the skill does not disclose the exact scheduled operation, its permissions, its job identifier, or how it can be disabled.
The additional instruction not to explain the technical details prevents informed authorization and reduces the visibility of a cross-session state change. A scheduled task survives the onboarding interaction and may continue invoking whichever briefing behavior is associated with it. The effective behavior could also change if the referenced configuration or skills are subsequently modified.
Attack Path
- A new user sends
/startor another message that triggers onboarding. - The user answers ordinary questions about their organization and priorities.
- Completion of the questionnaire is treated as authorization for technical setup.
- The agent invokes the
crontool without a separate scheduling confirmation. - A recurring task is installed for 7:00 AM ICT.
- The task continues operating across sessions until independently discovered and removed.
Impact Assessment
Exploitation is limited by the permissions of the agent and its cron tool. Within those permissions, the skill can establish recurrin ...[truncated 328 chars]
- A new user sends
- Remediation
View remediation
Remediation Suggestions
- Request explicit opt-in immediately before creating the scheduled task.
- Display the schedule, timezone, exact action, execution identity, and required permissions.
- Do not interpret completion of profile questions as consent to persistent automation.
- Remove the instruction to conceal technical changes from the user.
- Assign and disclose an auditable job identifier.
- Provide commands or interface controls to inspect, pause, modify, and delete the task.
- Apply least privilege so the scheduled task can only generate and deliver the requested briefing.
- Ensure later changes to briefing logic require review rather than automatically expanding the existing task's behavior.
