Source: billet technique de Lucas Laise. Contexte: analyse d’une vulnérabilité (CVE-2024-36424) dans K7 Ultimate Security v17.0.2045 menant d’un simple accès utilisateur à des privilèges SYSTEM, avec rétro‑ingénierie et étude des correctifs.
Le chercheur identifie un mécanisme de communication par named pipe entre l’interface utilisateur (K7TSMain.exe) et un service SYSTEM (K7TSMngr), via le pipe « \.\pipe\K7TSMngrService1 ». En cochant l’option « Non Admin users can change settings and disable protection », des requêtes sont envoyées pour modifier des clés de registre en SYSTEM, permettant d’ouvrir les paramètres à tous les utilisateurs. Premier impact: désactivation de la protection antivirus et possibilité de whitelister des fichiers en tant qu’utilisateur non privilégié.
Pour l’escalade de privilèges (LPE), l’auteur montre un format binaire de requête où un octet de longueur (par ex. 0xB9) contrôle la taille du bloc registre. En forgeant la trame, il applique la technique IFEO (Image File Execution Options) pour définir “Debugger” sur « K7TSHlpr.exe » vers « cmd.exe /c C:\temp\foobar.bat ». Le déclenchement d’une mise à jour exécute alors le binaire en SYSTEM, permettant la création d’un nouvel administrateur local, puis nettoyage des artefacts.
La section « Patches bypass & root-cause » présente une chronologie de trois correctifs et leurs contournements: 1) Patch 1 ajoute une « validation de l’appelant » côté pipe; le contournement utilise un manual mapping de DLL dans un processus « k7tsmngr.exe » lancé par l’utilisateur mais autorisé à dialoguer via le pipe, pour désactiver la self-protection et rejouer l’exploitation. 2) Patch 2 introduit un nouveau pilote « K7Sentry.sys 22.0.0.70 » empêchant ce chargement; le contournement passe par un autre exécutable signé K7 (« K7QuervarCleaningTool.exe ») qui accepte à nouveau le manual mapping. 3) Patch 3 motive une analyse approfondie: le serveur de pipe vérifie successivement le chemin d’installation K7, le hash MD5 (cache) et la signature numérique « K7 Computing Pvt Ltd »; en parallèle, le pilote K7Sentry protège certains processus selon la liste registre « VDefProtectedProcs ». Le TL;DR: utiliser un binaire signé K7 renommé, non listé dans « VDefProtectedProcs » et placé n’importe où, permet de satisfaire les contrôles tout en évitant la protection, rendant à nouveau possibles communication pipe et injection.
IOC/artefacts techniques:
- Named pipes: \.\pipe\K7TSMngrService1, \.\pipe\K7MailProxyV1
- Processus/binaries: K7TSMain.exe, K7TSMngr.exe, K7QuervarCleaningTool.exe, K7TSHlpr.exe
- Pilote: K7Sentry.sys (version observée: 22.0.0.70)
- Registre: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\K7TSHlpr.exe (valeur “Debugger”), HKLM\SYSTEM\CurrentControlSet\Services\K7Sentry\Config\VDefProtectedProcs, Software\K7 Computing\K7TotalSecurity (DirProductBase)
TTPs observées:
- Abus de named pipes pour déclencher des opérations privilégiées
- Manipulation du registre sous SYSTEM; détournement IFEO/Debugger
- Injection par manual mapping de DLL; bypass de self‑protection
- Validation signature éditeur et cache MD5 côté serveur de pipe; hook de ZwOpenProcess/ZwOpenThread par le driver
Conclusion: article de publication de recherche détaillant la découverte, l’exploitation et la rétro‑analyse des composants clés, ainsi que l’évaluation des patchs et leurs contournements.
🧠 TTPs et IOCs détectés
TTP
[‘Abus de named pipes pour déclencher des opérations privilégiées’, ‘Manipulation du registre sous SYSTEM; détournement IFEO/Debugger’, ‘Injection par manual mapping de DLL; bypass de self-protection’, ‘Validation signature éditeur et cache MD5 côté serveur de pipe’, ‘Hook de ZwOpenProcess/ZwOpenThread par le driver’]
IOC
{’named_pipes’: [’\\.\pipe\K7TSMngrService1’, ‘\\.\pipe\K7MailProxyV1’], ‘processus_binaries’: [‘K7TSMain.exe’, ‘K7TSMngr.exe’, ‘K7QuervarCleaningTool.exe’, ‘K7TSHlpr.exe’], ‘pilote’: ‘K7Sentry.sys (version observée: 22.0.0.70)’, ‘registre’: [‘HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\K7TSHlpr.exe (valeur “Debugger”)’, ‘HKLM\SYSTEM\CurrentControlSet\Services\K7Sentry\Config\VDefProtectedProcs’, ‘Software\K7 Computing\K7TotalSecurity (DirProductBase)’]}
🔗 Source originale : https://blog.quarkslab.com/k7-antivirus-named-pipe-abuse-registry-manipulation-and-privilege-escalation.html