Skip to main content

Alertes TEHTRIS EDR sur PAExec utilisé par Medulla

S'applique àà : Medulla / WithSecureTehtris ElementsEDR
Version : Toutes
Environnement : Windows / On-Premise / SaaS
CatégorieCatégorie : SécuritéSécurité / EDR / Télé-exécutionTélé-exécution

Contexte 

Medulla utilise PAExec, un équivalentéquivalent open source de PsExec/SysInternals, afin d'exécuterexécuter des actions àà distance sur les postes Windows administrésadministrés :

     DéploiementDéploiement d'applications

     ExécutionExécution de scripts planifiésplanifiés

     Orchestration de tâchestâches depuis le kiosque applicatif

     Actions de remédiationremédiation ou de maintenance

Important : Toute mesure d'exclusion de sécuritésécurité (EDR, antivirus, liste blanche) doit êtreêtre réévaluéeréévaluée régulièrementrégulièrement afin de s'assurer qu'elle reste pertinente au regard du contexte, des versions logicielles et de votre politique de sécurité.sécurité. Il est recommandérecommandé d'appliquer des exclusions les plus restrictives possibles.

Dans Medulla, ce mécanismemécanisme est notamment utiliséutilisé par le composant :

scheduling_launch_kiosk.py

PAExec adopte volontairement un comportement similaire àà PsExec, outil légitimelégitime largement utiliséutilisé par les administrateurs systèmessystèmes mais égalementégalement connu comme vecteur de mouvement latérallatéral dans certains scénariosscénarios d'attaque.

Les EDR modernes, dont TEHTRIS EDR, surveillent donc ce type de comportement par défautdéfaut et peuvent lever une alerte, voire bloquer le processus selon le mode de la politique appliquéeappliquée (détectiondétection ou protection).

Pourquoi TEHTRIS détecte-détecte-t-il un fichier PAExec-XXXX-POSTE.exe ?

PAExec fonctionne selon un mécanismemécanisme temporaire :

1.   Le binaire Medulla est copiécopié sur le poste cible

2.   Une copie temporaire est déposéedéposée dans C:\Windows\

3.   Cette copie est exécutéeexécutée sous forme de service Windows temporaire

4.   Le fichier est supprimésupprimé automatiquement àà la fin de l'opérationopération

Le nom du fichier est dynamique :

C:\WINDOWS\PAExec-<PID>-<NomPoste>.exe

Exemple :

C:\WINDOWS\PAExec-2124-CSE-SDN-ALV-02.exe

Le binaire d'origine Medulla reste :

C:\Program Files\Medulla\bin\paexec.exe

Information : L'EDR TEHTRIS détectedétecte principalement la copie temporaire déposéedéposée dans C:\Windows\, et non le binaire source Medulla.

Pourquoi PAExec s'exécute-exécute-t-il sous NT AUTHORITY\SYSTEM ?

Ce comportement est normal. Le cycle d'exécutionexécution PAExec se dérouledéroule en deux phases :

5.   Le binaire Medulla se copie dans C:\Windows\PAExec-*.exe

6.   La copie s'installe comme service Windows temporaire

Cette seconde phase s'exécuteexécute sous :

NT AUTHORITY\SYSTEM

avec l'argument :

-service

Comportement attendu : L'exécutionexécution sous SYSTEM et l'argument -service sont normaux dans le contexte Medulla.

Quels événementsévénements Windows sont générésgénérés ?

ID

Journal

Description

Attendu

7045

System

Installation du service PAExec temporaire

Oui

7036

System

DémarrageDémarrage du service PAExec

Oui

5145

Security

AccèsAccès au partage ADMIN$

Oui

5145

Security

AccèsAccès aux named pipes stdin/stdout/stderr

Oui

4648

Security

Authentification avec credentials explicites

Possible

Les événementsévénements sur les pipes nommésnommés :

*-stdin   *-stdout   *-stderr

sont particulièrementparticulièrement surveilléssurveillés par les EDR car ils caractérisentcaractérisent le fonctionnement PsExec/PAExec.

Pourquoi TEHTRIS associe-t-il cela àà du mouvement latérallatéral ?

TEHTRIS EDR détectedétecte un ensemble de comportements typiquement associésassociés aux outils d'administration distante :

     Copie d'un exécutableexécutable dans C:\Windows\

     Utilisation du partage ADMIN$

     CréationCréation d'un service Windows temporaire

     ExécutionExécution sous NT AUTHORITY\SYSTEM

     Communication via pipes nommésnommés stdin/stdout/stderr

Ces comportements sont identiques dans un usage :

     LégitimeLégitime : Medulla / administration systèmesystème

     Malveillant : déplacementdéplacement latérallatéral attaquant

Important : L'exclusion doit êtreêtre la plus restrictive possible afin de ne pas diminuer le niveau global de sécurité.sécurité.

Puis-je exclure C:\Program Files\Medulla\bin\paexec.exe ?

Non.

Cette exclusion seule est inefficace car le fichier détectédétecté par l'EDR est la copie temporaire :

C:\WINDOWS\PAExec-*.exe

et non le binaire source :

C:\Program Files\Medulla\bin\paexec.exe

Quelle exclusion est recommandéerecommandée dans TEHTRIS EDR ?

Dans TEHTRIS, les exclusions se configurent depuis la TEHTRIS XDR Platform via la liste blanche (whitelist) d'une politique EDR, puis en appliquant cette politique au groupe d'agents concernés.concernés. TEHTRIS permet de créercréer des règlesrègles par empreinte SHA256, par chemin/nom de fichier et par certificat de signature.

Option A Liste blanche par hash SHA256 (Recommandée)Recommandée)

Dans la TEHTRIS XDR Platform :

7.   Ouvrir le module EDR Policies (Politiques)

8.   ÉditerÉditer la politique appliquéeappliquée au groupe de postes, section Whitelist / Liste blanche

9.   CréerCréer une règlerègle de type Allow / Autoriser par hash (SHA256)

10.   Renseigner le hash SHA256 du binaire PAExec Medulla

11.   Optionnellement restreindre au chemin et au compte d'exécutionexécution :

Chemin  : C:\Windows\PAExec-*.exe Compte  : NT AUTHORITY\SYSTEM

12.   Appliquer la politique et vérifiervérifier sa propagation sur les agents

Recommandation : L'exclusion par hash est la méthodeméthode la plus sûresûre car elle valide l'intégritéintégrité exacte du binaire Medulla.

Option B Exclusion Parent Enfant (RecommandéeRecommandée en complément)complément)

Autoriser PAExec-*.exe uniquement lorsque le processus parent est l'agent Medulla.

Processus parent attendu :

Service agent Medulla (scheduler Python)

Dans TEHTRIS, cela se traduit par une règlerègle de liste blanche conditionnéeconditionnée àà la chaînechaîne parent enfant (parent = agent Medulla, enfant = PAExec-*.exe). Cette méthodeméthode permet de limiter fortement le risque d'abus.

Option C Exclusion par chemin (wildcard, Temporaire)

CréerCréer une exclusion de chemin :

C:\Windows\PAExec-*.exe

avec les conditions suivantes :

     Compte : NT AUTHORITY\SYSTEM

     Argument : -service

     Processus parent : agent Medulla

Attention : Cette méthodeméthode doit rester temporaire. Elle ne valide pas l'intégritéintégrité du binaire.

Exclusions de l'agent Medulla àà déclarerdéclarer dans TEHTRIS

Au-delàdelà de PAExec, il est recommandérecommandé de mettre en liste blanche les composants principaux de l'agent Medulla afin d'éviteréviter les faux positifs et les blocages sur les postes administrés.administrés. Ces exclusions sont àà déclarerdéclarer dans la politique EDR TEHTRIS appliquéeappliquée au groupe d'agents.

Processus / binaires de l'agent

Composant

Chemin par défautdéfaut

Agent Medulla (racine)

C:\Program Files\Medulla\

Binaire PAExec

C:\Program Files\Medulla\bin\paexec.exe

Copie temporaire PAExec

C:\Windows\PAExec-*.exe

InterpréteurInterpréteur Python de l'agent

C:\Program Files\Medulla\bin\python*.exe

Scheduler / kiosque

scheduling_launch_kiosk.py

Client SSH (télémaintenance)télémaintenance)

C:\Program Files\Medulla\bin\ssh*.exe

Dossiers àà exclure (analyse temps réel)réel)

     C:\Program Files\Medulla\ (et sous-dossiers)

     C:\ProgramData\Medulla\ (données,données, logs, files de traitement)

     C:\Windows\PAExec-*.exe (copie temporaire de télé-exécution)télé-exécution)

Bonne pratique : PrivilégierPrivilégier partout c'est possible l'exclusion par hash SHA256 plutôtplutôt que par simple chemin, et documenter chaque règlerègle (motif, date, version Medulla). RéévaluerRéévaluer l'ensemble aprèsaprès chaque montéemontée de version de l'agent.

Comment récupérerrécupérer le hash SHA256 du binaire PAExec ?

Depuis un poste administréadministré par Medulla (PowerShell) :

Get-FileHash "C:\Program Files\Medulla\bin\paexec.exe" -Algorithm SHA256

Le hash est identique entre :

C:\Program Files\Medulla\bin\paexec.exe

et :

C:\WINDOWS\PAExec-*.exe

car PAExec se copie àà l'identique.

Le hash change-t-il aprèsaprès une mise àà jour Medulla ?

Oui.

Si PAExec est mis àà jour dans une nouvelle version de Medulla, le SHA256 changera.

Recommandation : VérifierVérifier les exclusions TEHTRIS (règlesrègles par hash) aprèsaprès chaque mise àà jour majeure de Medulla, et mettre àà jour l'empreinte SHA256 le cas échéant.échéant.

RésuméRésumé des élémentséléments techniques

ÉlémentÉlément

Valeur

Binaire source

C:\Program Files\Medulla\bin\paexec.exe

Chemin détectédétecté

C:\Windows\PAExec-<PID>-<NomPoste>.exe

MécanismeMécanisme

Copie temporaire via ADMIN$

Compte d'exécutionexécution

NT AUTHORITY\SYSTEM

Argument

-service

ÉvénementsÉvénements Windows

7045, 7036, 5145

Composant Medulla

scheduling_launch_kiosk.py

Console d'exclusion

TEHTRIS XDR Platform EDR Policies Whitelist

Exclusion recommandéerecommandée

Hash SHA256 + contexte d'exécutionexécution

Exclusion àà éviteréviter

C:\Program Files\Medulla\bin\paexec.exe seul