Une nouvelle recherche a découvert plusieurs vulnérabilités critiques de RDP inversé dans Apache Guacamole, une application de bureau à distance populaire utilisée par les administrateurs système pour accéder et gérer à distance les machines Windows et Linux.
Les failles signalées pourraient potentiellement permettre à de mauvais acteurs de contrôler totalement le serveur Guacamole, d’intercepter et de contrôler toutes les autres sessions connectées.
Selon un rapport publiées par Check Point Research et partagées avec The Hacker News, les failles accordent « à un attaquant, qui a déjà réussi à compromettre un ordinateur à l’intérieur de l’organisation, de lancer une attaque sur la passerelle de Guacamole lorsqu’un travailleur sans méfiance tente de se connecter à une machine infectée. «
Après que la firme de cybersécurité a divulgué ses conclusions de manière responsable à Apache, les responsables de Guacamole, le 31 mars, la société a publié un version corrigée en juin 2020.
Apache Guacamole est une solution populaire de passerelles de bureau à distance sans client open source. Lorsqu’il est installé sur le serveur d’une entreprise, il permet aux utilisateurs de se connecter à distance à leurs bureaux en utilisant simplement un navigateur Web après un processus d’authentification.
Notamment, l’application de bureau à distance Apache Guacamole s’est accumulée 10 millions de téléchargements à ce jour sur Docker Hub.
Faille de corruption de mémoire pour RCE
Les attaques découlent de l’une des deux façons possibles de prendre le contrôle de la passerelle: soit par une machine compromise à l’intérieur du réseau d’entreprise qui exploite une connexion bénigne entrante pour attaquer la passerelle Apache, soit par un employé voyou qui utilise un ordinateur à l’intérieur du réseau pour détourner le passerelle.
L’équipe de Check Point a déclaré avoir identifié les failles dans le cadre du récent audit de sécurité de Guacamole, qui a également ajouté la prise en charge de FreeRDP 2.0.0 vers la fin de janvier 2020.
Il convient de souligner que FreeRDP, un client RDP open-source, avait sa propre part défauts d’exécution de code à distance, qui ont été divulgués au début de l’année dernière après la sortie de 2.0.0-rc4.
« Sachant que les vulnérabilités de FreeRDP n’ont été corrigées que sur la version 2.0.0-rc4, cela signifie que toutes les versions publiées avant janvier 2020 utilisent des versions vulnérables de FreeRDP », a déclaré Eyal Itkin, chercheur à Check Point.
Voici un bref résumé de tous les défauts découverts:
- Vulnérabilités de divulgation d’informations (CVE-2020-9497) – Deux failles distinctes ont été identifiées dans l’implémentation personnalisée par les développeurs d’un canal RDP utilisé pour gérer les paquets audio du serveur (« rdpsnd »). Le premier des deux défauts permet à un attaquant de créer un message rdpsnd malveillant qui pourrait conduire à une lecture hors limites similaire à Heartbleed. Un deuxième bogue dans le même canal est une fuite de données qui transmet les données hors limites à un client connecté.
Le troisième bogue de divulgation d’informations est une variante de la faille susmentionnée qui réside dans un canal différent appelé « guacai », responsable de l’entrée audio et est désactivé par défaut.
- Lectures hors limites dans FreeRDP – Cherchant à trouver une vulnérabilité de corruption de mémoire qui pourrait être exploitée pour exploiter les fuites de données ci-dessus, Check Point a déclaré avoir découvert deux autres instances de lectures hors limites qui tirent parti d’une faille de conception dans FreeRDP.
- Faille de corruption de mémoire à Guacamole (CVE-2020-9498) – Cette faille, présente dans une couche d’abstraction (« guac_common_svc.c ») posée sur les canaux rdpsnd et rdpdr (Device Redirection), provient d’une violation de la sécurité de la mémoire, entraînant une pointeur pendant qui permet à un attaquant de réaliser l’exécution de code en combinant les deux failles.
Les vulnérabilités d’utilisation après libération sont des bogues de corruption de mémoire qui se produisent généralement lorsqu’une application tente d’utiliser l’espace mémoire qui ne lui est plus affecté. Cela provoque généralement le plantage d’un programme, mais peut aussi parfois entraîner d’autres conséquences imprévues, telles que l’exécution de code qui peut être exploitée par des acteurs malveillants.
En utilisant les vulnérabilités CVE-2020-9497 et CVE-2020-9498, « un ordinateur d’entreprise malveillant (notre » serveur « RDP) peut prendre le processus guacd lorsqu’un utilisateur distant demande à se connecter à son ordinateur (infecté) « , a déclaré Itkin.
Un cas d’escalade de privilèges
Plus inquiétant, Check Point a constaté qu’il était possible de prendre le contrôle de toutes les connexions de la passerelle à partir d’un seul processus guacd, qui s’exécute sur le serveur Guacamole pour gérer les connexions à distance au réseau d’entreprise.
En plus de contrôler la passerelle, cette élévation de privilèges permet à un attaquant d’écouter toutes les sessions entrantes, d’enregistrer les informations d’identification utilisées et même de démarrer de nouvelles sessions pour contrôler le reste des ordinateurs de l’organisation.
« Bien que la transition vers le travail à distance depuis le domicile soit une nécessité en ces temps difficiles de la pandémie de COVID-19, nous ne pouvons pas négliger les implications sécuritaires de ces connexions à distance », a conclu Itkin. « Lorsque la majeure partie de l’organisation travaille à distance, cette implantation équivaut à acquérir un contrôle total sur l’ensemble du réseau organisationnel. »
« Nous recommandons fortement que tout le monde s’assure que tous les serveurs sont à jour et que la technologie utilisée pour travailler à domicile soit entièrement corrigée pour bloquer de telles tentatives d’attaque. »
//