Des chercheurs en sécurité ont réussi à lier à distance des dispositifs USB virtuels aux serveurs Supermicro, y compris via Internet, en s'appuyant sur une faille dans le logiciel du BMC (Baseboard Management Controller) des serveurs.

Le Baseboard Management Controller (BMC) est un microcontrôleur indépendant présent sur les cartes mères des serveurs qui permet une gestion de secours. Les BMC s'apparentent à de petits ordinateurs qui exécutent leur propre firmware, indépendamment de l'ordinateur principal, en l’occurrence le serveur lui-même. Chaque fabricant de serveurs dispose de son propre logiciel BMC dont l’interface de gestion permet aux administrateurs d’avoir un contrôle total sur le serveur et sur son système d'exploitation.

Des faiblesses sur les médias USB virtuels

Parce que ces interfaces offrent un niveau d’accès très élevé, la sécurité des implémentations BMC a fait, depuis des années, l’objet d’une attention particulière. Les chercheurs ont néanmoins découvert divers vulnérabilités affectant plusieurs serveurs. La dernière recherche réalisée par Eclypsium, une entreprise spécialisée dans la sécurité des firmwares, s'est penchée sur une fonction du logiciel du BMC de Supermicro dite de service de médias virtuels. Cette fonctionnalité permet aux administrateurs de connecter des périphériques USB virtuels distants à un serveur via le client logiciel BMC. La fonctionnalité est implémentée par le biais d'une application Java servie par l'interface web du contrôleur.

Même si la fonctionnalité nécessite une authentification, les chercheurs d'Eclypsium ont constaté des faiblesses importantes dans l’implémentation. D'une part, l'application permet l'authentification en texte clair, avec le risque d’être interceptée. Le chiffrement est pris en charge, mais il doit être demandé par le client, et non par le serveur. Et même dans ce cas, seul le paquet d'authentification est chiffré en RC4, c’est-à-dire un algorithme faible avec une clé codée en dur partagée de surcroît par tous les Baseboard Management Controller de Supermicro.

Les BMC des plates-formes X9, X10 et X11 de Supermicro sont tous concernées par ces problèmes, mais les BMC des plates-formes X10 et X11 présentent également une vulnérabilité de contournement d'authentification : le serveur conserve l'autorisation d'un client même après sa déconnexion, ce qui permet à un nouveau client qui s'authentifie avec des identifiants erronés d'accéder à l'application. « Si un administrateur valide avait utilisé des médias virtuels depuis le dernier arrêt du BMC, la vulnérabilité de contournement d'authentification permettrait à un attaquant de se connecter même sans nom d'utilisateur et mot de passe appropriés », ont déclaré les chercheurs d'Eclypsium dans leur rapport. « Étant donné que les BMC sont conçus pour être toujours disponibles, il est particulièrement rare qu'un BMC soit mis hors tension ou réinitialisé. Par conséquent, la vulnérabilité de contournement de l'authentification est susceptible de s'appliquer sauf si le serveur a été physiquement débranché ou si le bâtiment a été privé d'électricité ».

Le service de médias virtuels permet essentiellement aux clients d'accéder à un hub USB virtuel auquel ils peuvent connecter des périphériques USB virtuels. Le BMC prend en charge tous les types de périphériques USB, par exemple un CD-ROM virtuel qui peut servir à démarrer le serveur, un périphérique de stockage de masse USB pour exfiltrer les données du serveur, ou un clavier USB pour exécuter une série de frappes malveillantes et prendre le contrôle du serveur de diverses manières. Dans leur PoC, les chercheurs ont pu exfiltrer les données d'un serveur en utilisant Facedancer, un framework open source qui permet d'émuler des périphériques USB.

Il y a plusieurs façons d'attaquer les serveurs Supermicro en exploitant ces vulnérabilités. Dans le cas des plates-formes X10 ou X11, il est possible d’utiliser le contournement d'authentification, y compris sur Internet. Cependant, les attaquants peuvent également essayer d’utiliser des identifiants par défaut, souvent laissés en l’état, ou, s'ils sont sur le même réseau et s’ils peuvent intercepter le trafic, ils peuvent décrypter les paquets et voler les informations d'identification.

Le service de médias virtuels fonctionne sur le port TCP 623 et un scan par Eclypsium a révélé que 47 339 BMC de Supermicro de plus de 90 pays disposant de ce service étaient directement exposés à Internet. Évidemment, le nombre de serveurs vulnérables est encore plus important si les attaquants accèdent au même réseau que celui donnant accès aux BMC.

Corriger le défaut et sécuriser les BMC

Supermicro a publié des mises à jour pour les BMC des produits concernés afin de remédier aux vulnérabilités. Même s’il est recommandé de déployer ces mises à jour dès que possible, il est probable que d’autres vulnérabilités seront découvertes dans le BMC. Les entreprises devraient donc isoler ces interfaces de gestion.  « Compte tenu de la vitesse à laquelle on découvre des vulnérabilités BMC et compte tenu de leur énorme impact potentiel, les entreprises ne doivent pas prendre le risque de les exposer directement à Internet », ont déclaré les chercheurs d'Eclypsium.

« Les BMC qui ne sont pas exposés à Internet devraient également être surveillés de près pour déceler les vulnérabilités et les menaces. Cependant, si les entreprises négligent souvent d’appliquer les correctifs à leurs logiciels et à leurs systèmes d'exploitation, c’est beaucoup moins le cas du firmware de leurs serveurs », ont-ils ajouté.

Même dans le cas des réseaux d'entreprise internes, il est préférable de limiter l’exposition des interfaces de gestion de serveurs à un segment de réseau privé où le trafic est surveillé et protégé par un pare-feu et auquel seuls les administrateurs peuvent accéder. Sur un tel segment de réseau, il est par exemple possible de bloquer totalement le trafic vers le port TCP 623, et empêcher ainsi l'accès à ce service de médias virtuels de façon à réduire le risque lié à la vulnérabilité jusqu'au déploiement des mises à jour.

Les Baseboard Management Controller ont été créés pour permettre l’exécution de tâches d’administration hors bande sans redémarrage des serveurs, mais le déploiement des mises à jour de firmwares sur les BMC eux-mêmes nécessite l'arrêt du serveur, ce qui implique une planification. Elles ne peuvent donc pas être appliquées immédiatement. « Nous tenons à remercier les chercheurs qui ont identifié la vulnérabilité dans la fonction des médias virtuels sur les BMC », a déclaré Supermicro Computer dans un communiqué envoyé par mail. « Supermicro a travaillé en étroite collaboration avec les chercheurs pour valider le correctif. Les meilleures pratiques de l'industrie consistent à exploiter des BMC sur un réseau privé isolé, non exposé à Internet, de façon à réduire, mais non à éliminer, le risque identifié ».