Artefact du planificateur des tâches

But et fonction

Le planificateur des tâches Windows est un composant central du système d’exploitation qui permet d’automatiser des tâches en exécutant des programmes ou scripts à des moments précis ou en réponse à des événements spécifiques. Les usages légitimes incluent l’exécution de scripts de maintenance système, la vérification des mises à jour logicielles et la création de sauvegardes définies par l’utilisateur.

D’un point de vue DFIR, le planificateur des tâches est l’un des mécanismes de persistance les plus puissants et souvent abusés disponibles sur Windows. Les attaquants, les logiciels malveillants et les tricheurs l’exploitent pour s’assurer que leur code soit exécuté automatiquement, souvent avec des privilèges accrus et sous le radar des outils de surveillance plus basiques. Il permet de lancer une charge utile en réponse à une grande variété de déclencheurs, tels que le démarrage du système, la connexion utilisateur ou même des événements spécifiques du système.

Emplacement et structure

Les artefacts associés aux tâches planifiées sont principalement stockés à deux endroits : le système de fichiers et le Registre.

  1. Système de fichiers (fichiers de définition de tâches) :

    • Emplacement : (et ses sous-répertoires)C:\Windows\System32\Tasks

    • Structure: Chaque tâche planifiée est définie par un fichier XML stocké dans cet arbre de répertoires. La structure de dossiers à l’intérieur reflète souvent l’organisation visible dans l’interface graphique du planificateur des tâches. Ce fichier XML contient toutes les informations critiques concernant la tâche.\Tasks

  2. Registre (cache des tâches) :

    • Emplacement: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache

    • Structure: Le Registre maintient une cache d’informations sur les tâches pour la performance. La sous-clé reflète la structure de dossiers du système de fichiers, et la sous-clé contient les métadonnées de chaque tâche, y compris une référence à son fichier de définition et à ses descripteurs de sécurité.Tree Tasks

Métadonnées stockées

Le fichier de définition de tâche XML est l’artefact le plus riche en termes de criminalistique. Il contient une spécification complète du comportement de la tâche :

  • Déclenche: Définit ce qui fait que la tâche s’exécute. Cela peut inclure :

    • Un moment précis (CalendarTrigger)

    • Démarrage du système (BootTrigger)

    • Connexion utilisateur (LogonTrigger)

    • Inactivité du système (IdleTrigger)

    • Un événement spécifique issu du journal d’événements Windows (EventTrigger)

  • Actions: Définit ce que fait la tâche. L’action la plus courante est , qui exécute un programme ou un script. Cette section contient :Exec

    • <Command>: Le chemin complet vers l’exécutable à exécuter (par exemple, , , un chargeur de triche).powershell.exe cmd.exe

    • <Arguments>: Les arguments de la ligne de commande doivent être transmis à l’exécutable. C’est souvent là que les charges utiles ou scripts malveillants sont spécifiés.

  • Paramètres: Définit les conditions et le comportement de la tâche, telles que la possibilité d’exécuter à la demande, quoi faire en cas d’échec, et combien de temps elle peut durer.

  • Principal: Définit le contexte de sécurité dans lequel la tâche s’exécutera (par exemple, le compte utilisateur, y compris le compte puissant).SYSTEM

  • Auteur et horodatages : Le fichier XML contient l’auteur de la tâche et son horodatage de création. Les horodatages du système de fichiers (« Date de création » et « Date de modification ») du fichier XML lui-même sont également des indicateurs critiques.

Valeur médico-légale

L’analyse des tâches planifiées est essentielle pour identifier les mécanismes de persistance et les activités malveillantes automatisées.

  • Découvrir la persévérance : C’est une méthode principale pour détecter des malwares, des chargeurs ou des scripts configurés pour survivre à un redémarrage. Un ensemble de tâches pour s’exécuter avec un argument codé suspect à chaque connexion utilisateur est une technique classique de persistance.powershell.exe

  • Reconstitution des actions de l’attaquant : Les balises et fournissent la ligne de commande exacte utilisée, révélant les outils et méthodes de l’attaquant.<Command> <Arguments>

  • Identifier l’escalade des privilèges : Les tâches configurées pour s’exécuter en mode peuvent servir de vecteur d’escalade de privilèges, permettant au code de s’exécuter avec le niveau d’accès le plus élevé sur la machine locale.SYSTEM

  • Détection de la falsification : Les horodatages de création et de modification des fichiers XML sont des indicateurs de grande valeur. Trouver un fichier de tâche créé ou modifié peu avant une enquête est très suspect. Le journal des événements Windows pour le planificateur des tâches () enregistre également la création (ID d’événement 106), la modification (ID 140) et la suppression (ID 141) des tâches.C:\Windows\System32\Tasks Microsoft-Windows-TaskScheduler/Operational


Points de réflexion (Concours SS)

Pour un ScreenSharer, le Planificateur des tâches est un emplacement critique pour vérifier la présence de triches cachées et de démarrage automatique et contourner les scripts.

  • La triche du démarrage automatique : Un joueur peut configurer une tâche programmée pour lancer son chargeur de triche ou son injecteur à chaque connexion à Windows. Cela signifie que la triche pourrait tourner en arrière-plan avant même qu’ils ne lancent Minecraft. Un SSer devrait vérifier les tâches récemment créées, en particulier celles déclenchées par la connexion ou le démarrage.

  • Contourner les artefacts d’exécution : L’exécution d’un programme via le planificateur des tâches peut parfois générer moins de bruit dans certains artefacts d’exécution (comme l’aide utilisateur) comparé à un lancement manuel de l’interface graphique. La tâche elle-même devient la principale preuve de l’exécution.

  • Trouver le script de « nettoyage » : Un tricheur avisé pourrait créer une tâche planifiée qui exécute un script de nettoyage (par exemple, un script PowerShell pour supprimer les fichiers Prélecture et Journal) déclenché par un événement spécifique, comme le lancement d’un outil de partage d’écran (). Trouver une telle tâche est une preuve directe d’une tentative de contournement prévue.AnyDesk.exe

  • Fichiers XML comme preuve irréfutable : Un SSer peut rapidement utiliser Search Everything pour visualiser le contenu de , trié par « Date de modification ». Trouver un fichier de tâche modifié quelques minutes avant le SS, puis ouvrir le XML pour voir qu’il est configuré pour exécuter un exécutable depuis le dossier Downloads, suffit souvent à conclure l’enquête.C:\Windows\System32\Tasks

Mis à jour