Il est toujours délicat de savoir qu’un outil de gestion de risques est vulnérable à plusieurs failles critiques de sécurité. C’est ce qui arrive au logiciel IBM Data Risk Manager (IDRM) dans lequel Pedro Ribeiro, directeur de la recherche chez Agile Information Security, a découvert et publié pas moins de 4 vulnérabilités critiques. IDRM est une plateforme qui combine des données relatives aux menaces provenant de sources de sécurité disparates pour réaliser une analyse des risques au sein des entreprises.
En analysant l'appliance virtuelle Linux IDRM, Pedro Ribeiro a découvert un contournement de l'authentification, une injection de commandes, un mot de passe par défaut non sécurisé et un téléchargement de fichier arbitraire. A noter que même si ces failles de sécurité sont exploitées séparément, l'enchaînement des trois premières autorise des attaquants non authentifiés à exécuter à distance du code en tant que root sur des systèmes vulnérables. De plus, en combinant les première et quatrième vulnérabilités, des pirates peuvent télécharger des fichiers arbitraires. Les versions 2.0.1 à 2.0.3 du logiciel sont concernées.
Contournement de l'authentification
Dans le détail, le premier bug est un problème de contournement de l'authentification qui existe dans l'API de l’appliance, /albatross/user/login. Elle vérifie le nom et l’identifiant de l’utilisateur au sein d’une base de données. Si tout est correct, elle renvoie un mot de passe aléatoire spécifiquement créé pour l’utilisateur. Toutefois, Pedro Ribeiro a démontré qu’un attaquant peut à distance envoyer une requête spécialement conçue pour tromper ce processus et récupérer un Bearer token. Celui-ci peut ensuite être utilisé pour accéder à diverses API. Le second bug lié à l’injection de commandes existe car IDRM expose une API à /albatross/restAPI/v2/nmap/run/scan et accorde à un utilisateur authentifié d'effectuer des scans nmap.
La troisième faille provient de l’utilisation d’identifiants codés en dur : l’utilisateur admin est « a3user » par défaut dans l’appliance virtuelle. Cet utilisateur est autorisé à se connecter via SSH et à exécuter des commandes sudo, et il est configuré avec un mot de passe par défaut « idrm », souligne le chercheur. Combiné avec les deux autres failles, un attaquant peut obtenir le statut root sur l’appliance et aboutit ainsi à la compromission complète du système.
Une mauvaise communication avec IBM
Alerté, IBM n’a pas souhaité corriger ces failles en soulignant que le rapport de Pedro Ribeiro ne rentrait pas dans le champ du programme de divulgation de vulnérabilités. Concrètement, IDRM rentre dans le cadre d’un programme de Bug Bounty via la plateforme HackerOne et le chercheur aurait dû passer par ce service. Une réponse un peu oiseuse sur laquelle Big Blue est revenue en expliquant à nos confrères de Bleepincomputer, « Une erreur de procédure a entraîné une réponse inappropriée au chercheur qui a signalé cette situation à IBM ».
Concernant les patchs, IBM a précisé avoir corrigé les vulnérabilités de téléchargement de fichiers arbitraires et d'injection de commandes qui existaient dans les versions 2.0.1 et supérieures du produit IBM Data Risk Manager. Pour les deux autres failles, il est nécessaire de mettre à jour la solution vers la version 2.0.4.