Un chercheur a découvert une faille baptisée « PhantomRPC » que Microsoft ne considère pas comme une vulnérabilité nécessitant un correctif.
PhantomRPC exploite le protocole RPC ( Windows Procedure Call) Windows , qui constitue le cœur de la communication entre Windows . Cette vulnérabilité permet à un processus disposant de droits d'usurpation d'identité d'élever ses privilèges au niveau SYSTEM en se faisant passer pour des clients hautement privilégiés qui se connectent à un faux serveur RPC.
Le chercheur a présenté un rapport technique détaillé décrivant cinq vecteurs d'exploitation, notamment la contrainte, l'interaction avec l'utilisateur ou les services s'exécutant en arrière-plan. Il a averti que les vecteurs potentiels étaient « pratiquement illimités », car le problème fondamental est d'ordre architectural.
Microsoft a toutefois classé cette faille comme « modérée », a refusé toute prime, a décliné d'attribuer un identifiant CVE (un numéro dans la liste des vulnérabilités et expositions courantes) et a clos le dossier sans suivi. L'entreprise estime que cette technique nécessite une machine déjà compromise et ne permet pas d'accès non authentifié ou à distance.
Les experts ont contesté l'analyse de Microsoft. Ils craignent que Microsoft ne minimise l'importance d'une technique d'escalade de privilèges locale et systémique présente dans toutes Windows prises en charge.
Le problème
Le problème réside essentiellement dans le fait que le moteur d'exécution Windows ne vérifie pas suffisamment que le serveur auquel se connecte un client disposant de privilèges élevés correspond bien au point de terminaison légitime prévu.
Si un serveur RPC légitime n'est pas accessible (par exemple parce que le service s'est arrêté, a été mal configuré, n'est pas installé ou en raison d'une condition de concurrence), un attaquant disposant du privilège SeImpersonatePrivilege peut mettre en place un faux serveur RPC qui « comble le vide » en utilisant la même interface et le même point de terminaison.
Lorsqu'un utilisateur SYSTEM ou un client disposant de privilèges élevés se connecte à ce faux serveur en utilisant un niveau d'usurpation d'identité qui permet au serveur de se faire passer pour le client, l'attaquant peut appeler RpcImpersonateClient et élèvent immédiatement leurs privilèges au niveau SYSTEM.
Du point de vue de Microsoft, la possibilité d'exécuter un serveur RPC non autorisé de cette manière relève de la catégorie « déjà compromis ».
Privilège d'usurpation d'identité
Pour mieux comprendre le problème, il faut examiner de plus près le fonctionnement de SeImpersonatePrivilege.
En gros, « SeImpersonatePrivilege » est Windows qui permet à un programme de « se faire passer pour vous » une fois que vous vous êtes connecté, afin qu'il puisse effectuer des opérations en votre nom en utilisant votre niveau d'accès.
Cela est nécessaire car de nombreux services système et applications de type serveur (partage de fichiers, serveurs RPC, serveurs COM, applications Web) doivent effectuer des opérations pour le compte d'un utilisateur, comme lire ses fichiers ou appliquer une stratégie de groupe.
Si un pirate parvient à obtenir ce privilège, il peut créer un faux service ou serveur et attendre qu'un compte disposant de privilèges plus élevés s'y connecte. Lorsque ce service hautement privilégié se connecte, le pirate peut s'emparer de son jeton de sécurité et se faire passer pour lui, passant ainsi d'un compte aux privilèges limités à un contrôle total (SYSTEM) sur cette machine.
Protection de l'environnement
Un porte-parole de Microsoft a fait la déclaration suivante :
« Cette technique nécessite une machine déjà compromise et ne permet pas d'accès non authentifié ou à distance. Toute mise à jour repose sur un équilibre entre la compatibilité existante et les risques pour les clients, et nous restons déterminés à renforcer continuellement la sécurité de nos produits. Nous recommandons à nos clients de suivre les meilleures pratiques en matière de sécurité, notamment en limitant les privilèges administratifs et en appliquant le principe du moindre privilège. »
À notre avis, pour remédier correctement au problème de PhantomRPC, il faudrait apporter des modifications en profondeur à l'architecture RPC, ce qui est difficile à réaliser sur Windows actuelles Windows sans nuire à la compatibilité. Compte tenu de l'ampleur des changements nécessaires, c'est peut-être quelque chose que nous verrons dans les versions futures.
Ce que vous pouvez faire :
- Comme PhantomRPC s'inscrit dans un ensemble plus vaste, il reste très important de maintenir Windows .
- N'utilisez votre compte administrateur qu'avec parcimonie et uniquement pour les tâches qui nécessitent ce niveau de privilèges.
- Utilisez une solution anti-malware à jour et fonctionnant en temps réel, capable de détecter et de bloquer les activités suspectes visant à obtenir des privilèges supérieurs.
- Évitez de désactiver ou de « renforcer » des services à l'aveuglette, car un service malveillant pourrait prendre leur place.
Pour répondre à la question posée dans le titre : il s'agit apparemment d'une « fonctionnalité » susceptible d'être exploitée de multiples façons, qui a désormais dépassé le cadre de son modèle de menace initial. Les responsables de la sécurité doivent donc les considérer comme des risques permanents, plutôt que comme des vulnérabilités ponctuelles (CVE).
« L'une des meilleures suites de cybersécurité au monde. »
D'après CNET.Lire leur critique →





