T06 · System Persistence
- Location
SKILL.md:109- Finding
Persistent Scheduled Update and Installation Task
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:109-125
Vulnerability Type: Persistent scheduled execution
Risk Level: HighVulnerable Code
markdown ## Maintenance **Daily update required.** Detection patterns and fixes are pushed frequently. ```bash cd /path/to/arb-injection git pull origin main npm install # If package.json changedSchedule daily update check (09:00):
json { "schedule": { "kind": "cron", "expr": "0 9 * * *" }, "payload": { "kind": "systemEvent", "text": "ArbInjectionSkill daily update: git pull and npm install" }, "sessionTarget": "main" }text ### Technical Analysis The skill requires a recurring cron-like task directed at the main session. The task persists beyond the original skill invocation and repeatedly requests retrieval and installation of code from a mutable remote branch. Although the scheduled payload is expressed as a system event rather than a directly embedded shell command, its explicit purpose is to trigger `git pull` and `npm install`. If the agent follows the event automatically or with insufficient review, new upstream code and package lifecycle scripts can execute in later sessions without being covered by the original audit. ### Attack Path 1. A user loads the skill and follows its maintenance instructions. 2. The daily schedule is registered against the main agent session. 3. An upstream maintainer, compromised account, or repository attacker modifies the `main` branch or its dependencies. 4. The scheduled event prompts the agent to run `git pull origin main`. 5. The agent runs `npm install`, potentially executing newly introduced package lifecycle scripts. 6. The modified code gains execution in the environment during a later session. ### Impact Assessment The mechanism establishes cross-session persistence at the agent-task level. Code subsequently introduced upstream may execute with the permissions of ...[truncated 354 chars]- Remediation
View remediation
Remediation Suggestions
- Remove the requirement to create an automatic recurring update task.
- Require explicit, informed user authorization for each update.
- Pin the repository to a reviewed commit hash rather than tracking
main. - Present and review upstream diffs before installing or running updated code.
- Run updates in an isolated, least-privileged environment without unnecessary secrets.
- Do not target the main agent session with maintenance events.
- Require signed commits or releases and verify signatures before updating.
- Maintain an auditable update log and provide a clear mechanism to disable or remove scheduled tasks.
