Scheduled Tasks Persistence
hackingDéfinition
Les tâches planifiées Windows (Scheduled Tasks) constituent un mécanisme de persistance courant permettant d'exécuter automatiquement des programmes selon un calendrier configurable : au démarrage du système, à l'ouverture de session d'un utilisateur, à intervalles réguliers, ou lors d'événements système spécifiques. Elles sont utilisées aussi bien par des logiciels légitimes que par des attaquants pour maintenir un accès persistant.
La création d'une tâche planifiée malveillante peut s'effectuer via : la commande schtasks (exemple : schtasks /create /tn "WindowsUpdate" /tr "C:\Windows\Temp\payload.exe" /sc ONLOGON /ru SYSTEM), le module Task Scheduler via COM (interface programmatique), PowerShell (Register-ScheduledTask), et des outils comme AT (obsolète mais toujours disponible). Ces méthodes produisent des fichiers XML dans C:\Windows\System32\Tasks\ et des entrées dans le registre.
Les attributs d'une tâche planifiée malveillante bien construite incluent : un nom imitant des tâches légitimes Windows (WindowsUpdate, GoogleUpdateMachine, SyncTask), l'exécution en tant que SYSTEM pour des privilèges maximaux, un déclencheur discret (ONEVENT sur un EventID fréquent plutôt que AT STARTUP pour éviter la détection), et un chemin d'exécutable légitime avec des arguments qui chargent le payload (wscript.exe, powershell.exe, mshta.exe).
Les tâches planifiées créées par des frameworks C2 populaires sont souvent identifiables par certains patterns : noms générés aléatoirement, intervalles d'exécution atypiques, ou exécution de commandes PowerShell encodées. Les chercheurs en sécurité ont catalogué les patterns caractéristiques des frameworks C2 les plus courants.
De l'exploitation avec des droits limités, la création de tâches via HKCU et des paramètres RunOnlyIfLoggedOn peut être réalisée sans droits d'administrateur, offrant une persistance au niveau utilisateur. Avec des droits d'administrateur, les tâches peuvent s'exécuter en SYSTEM, en n'importe quel utilisateur, ou avec des tokens spécifiques.
Fonctionnement
Les tâches planifiées sont stockées en XML dans C:\Windows\System32\Tasks\ (pour les tâches système) et C:\Windows\SysWOW64\Tasks\. Le Task Scheduler Service (schedule) lit ces fichiers et maintient ses propres bases de données dans le registre. Les déclencheurs supportés incluent BOOT (démarrage avant connexion), LOGON, TIME (récurrent ou ponctuel), IDLE, EVENT (basé sur des EventIDs), SESSION_CONNECT/DISCONNECT, et WORKSTATION_LOCK/UNLOCK.
Exploitation offensive
Une tâche configurée avec un déclencheur ONLOGON + RUNAS SYSTEM persiste après tout redémarrage et s'exécute avec les privilèges les plus élevés. Des frameworks comme Cobalt Strike créent automatiquement des tâches persistantes avec leurs beacons. La combinaison tâche planifiée + payload encodé PowerShell + injection dans un processus légitime est un pattern de persistance difficile à détecter.
Détection et mitigation
L'EventID 4698 (création d'une tâche planifiée) est un indicateur clé à surveiller dans les SIEM. Les nouvelles tâches dans les répertoires Tasks doivent être auditées. Autoruns affiche toutes les tâches planifiées avec leurs exécutables et permet une validation rapide. Les solutions EDR surveillent la création de tâches par des processus non standards et les tâches exécutant des commandes PowerShell encodées.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h