T06 · System Persistence
Warning
- Location
- SKILL.md:80
- Finding
- Optional cron configuration creates cross-session persistence## Vulnerability Details **File Location**: `SKILL.md:80-95` **Vulnerability Type**: User-installed recurring scheduled tasks **Risk Level**: Medium ### Vulnerable Code ```cron ### Real-Time Alerts (Check Every 5 Minutes) # Add to crontab */5 * * * * cd ~/clawd && python3 skills/ham-radio-dx/dx-monitor.py watch --new-only --callsign YOUR_CALL >> /tmp/dx-alerts.log ### Daily Digest (9am Every Day) # Add to crontab 0 9 * * * cd ~/clawd && python3 skills/ham-radio-dx/dx-monitor.py digest >> ~/dx-digest-$(date +\%Y-\%m-\%d).txt ``` ### Technical Analysis The documentation instructs users to add two recurring cron entries. These entries survive the original Skill invocation and repeatedly execute the project script under the user's account. Scheduling is relevant to the declared automated-monitoring feature and does not request elevated privileges. However, it exceeds the privileges and persistence required for manual spot monitoring or digest generation. The scheduled commands refer to a mutable script beneath `~/clawd`; any future modification or replacement of that file will be executed automatically by cron. The repository does not silently install these tasks—the user must add them manually—but the documentation does not provide removal instructions, integrity controls, or a warning about the resulting persistent network activity. ### Attack Path 1. A user follows the documentation and adds one or both entries to their crontab. 2. The scheduled task continues running after the original interactive session ends. 3. The script or one of its parent directories is subsequently modified by another process, compromised account, unsafe update, or malicious package. 4. Cron executes the modified script every five minutes or once daily with the user's permissions. 5. The replacement code gains recurring execution and access to resources available to that user. ### Impact Assessment E ...[truncated 564 chars]
- Remediation
- ## Remediation Suggestions - Keep scheduled monitoring explicitly opt-in and separate from basic installation. - Explain that the entries persist across sessions and repeatedly initiate outbound connections. - Show users the exact crontab changes and request confirmation before any automated installer applies them. - Run the task under a dedicated, unprivileged account where practical. - Use an absolute, access-controlled script path rather than a mutable working-tree-relative path. - Pin or verify the script version before scheduled execution. - Supply removal instructions, such as identifying and deleting the exact crontab entries. - Consider a constrained user-level service with restart limits, logging controls, and network restrictions.
