IBM Data Risk Manager: 4 failles de sécurité découvertes

4 failles de sécurité ont été identifiées dans IBM Data Risk Manager (IDRM). Ces failles peuvent mener à une exécution de code à distance avec des privilèges root dans les versions vulnérables. Un exploit semble également être disponible.

IBM s’est exprimé sur le problème cette semaine, après qu’un chercheur ait rendu les failles publics. L’une de ces failles pourrait être une faille zéro-day. Big Blue continue son enquête.

IBM Data Risk Manager (IDRM) est une plate-forme logicielle qui regroupe les données de menace provenant de systèmes de sécurité complètement différent, afin d’effectuer une analyse des risques de sécurité d’entreprise. Selon le chercheur en sécurité Pedro Ribeiro d’Agile Information Security, les anciennes versions (v. 2.0.1 à 2.0.3) de l’application virtuelle IDRM Linux contiennent plusieurs failles: contournement de l’authentification, injection de commande, mot de passe par défaut non sécurisé et téléchargement de fichiers arbitraires. Les trois premiers peuvent être associés pour obtenir une exécution de commande à distance dans les versions vulnérables.

“IDRM est un produit de sécurité d’entreprise qui traite des informations très sensibles”, a écrit Ribeiro dans son analyse. «Le piratage d’une application IDRM peut mener à un compromis à grande échelle, car l’application stocke les informations d’identification pour accéder à d’autres outils de sécurité, sans oublier qu’elle contient des informations sur les vulnérabilités critiques qui affectent l’entreprise.»

3 failles associées pour une exécution de code à distance

Selon la recherche, les trois premières failles détectées par Ribeiro peuvent être combinés pour permettre à un attaquant distant de compromettre le système.

ibm

La première faille n’est pas encore résolu par IBM: un problème de contournement de l’authentification qui existe dans le point de terminaison de l’API de l’appliance, /albatross/user/login. Ce point de terminaison est authentifié par une méthode qui prend le nom d’utilisateur et les informations d’identification de session de la personne qui tente de se connecter, et vérifie si le nom d’utilisateur existe dans la base de données et si le sessionId est associé à ce nom d’utilisateur. Si tout est ok, l’application renvoie un nouveau mot de passe aléatoire généré pour ce nom d’utilisateur.

Cependant, Ribeiro a démontré qu’un attaquant distant peut envoyer une demande spéciale qui exploite ce processus et permet à un pirate de récupérer un jeton d’administration Bearer valide. Cela peut ensuite être utilisé pour accéder à diverses API.

“Il est également possible de se connecter en tant qu’utilisateur Web normal sur le point de terminaison /albatross/login, ce qui générera un cookie d’authentification au lieu d’un jeton, permettant d’accéder à la console d’administration Web”, a expliqué le chercheur. «Dans tous les cas… l’authentification est maintenant complètement contournée et nous avons un accès administratif complet à IDRM.»

La faille d’injection de commande, qui a un correctif, existe quant à elle car l’IDRM expose une API dans /albatross/restAPI/v2/nmap/run/scan qui permet à un utilisateur authentifié d’effectuer des analyses nmap.

«Avoir accès à nmap permet d’exécuter des commandes arbitraires, si nous pouvons télécharger un fichier de script, puis le passer comme argument à nmap avec –script = », a expliqué le chercheur. «Cependant, pour réaliser l’exécution du code de cette manière, nous devons encore télécharger un fichier. Heureusement, il existe une méthode qui traite les fichiers de correctifs et accepte les données de fichiers arbitraires, en les enregistrant dans /home/a3user/agile3/patches/ . ”

Cette méthode est censée accepter un fichier de correctif, le traiter et l’appliquer. Cependant, Ribeiro a expliqué «l’existence de plusieurs failles dans la version 2.0.2 qui provoquent l’abandon précoce de la méthode et l’échec du traitement du fichier. Pourtant, le fichier est téléchargé et conservé sur le disque même après l’abandon de la méthode. »

Afin d’exploiter cette faille, un pirate devrait avoir une session authentifiée en tant qu’administrateur, ce qui peut être réalisé avec la première vulnérabilité.

La troisième faille, qui selon IBM peut être résolu en reconfigurant l’application, provient de l’utilisation d’informations d’identification codées en dur: l’utilisateur administratif de IDRM est «a3user» par défaut.

«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»», a déclaré Ribeiro.

Et, lorsqu’il est combiné avec les deux premières failles, cela permet à un attaquant non authentifié d’effectuer une exécution de commande à distance en tant que root sur IDRM et causer la compromission complète du système, a déclaré le chercheur.

Un module d’exploitation Metasploit implémentant la chaîne complète cet exécution de code à distance a été publié et une démonstration vidéo peut être trouvée ici.

Téléchargement de fichier arbitraire

La 4ème faille, également corrigé dans les versions ultérieures, est une faille de traversée de chemin qui est causée par une limitation incorrecte d’un nom de chemin à un répertoire restreint.

«IDRM expose une API dans /albatross/eurekaservice/fetchLogFiles qui permet à un utilisateur authentifié de télécharger des fichiers logs à partir du système», a expliqué Ribeiro. “Cependant, le paramètre logFileNameList contient une faille de traversée de répertoire qui permet à un attaquant de télécharger n’importe quel fichier hors du système.”

Il a ajouté que l’exploitation est «très simple».

Cette faille aussi peut être associée. Lorsqu’elle est combinée avec la première faille de contournement de l’authentification, un attaquant non authentifié peut télécharger n’importe quel fichier lisible par «a3user» sur le système, a déclaré Ribeiro. Un deuxième module Metasploit implémentant cela a été publié et une vidéo de démonstration peut être trouvée ici.

Information de patch et mitigation

Les versions 2.0.1 à 2.0.3 ont été confirmées comme vulnérables aux trois premières vulnérabilités, selon Ribeiro.

En ce qui concerne la 4ème vulnérabilité, la version 2.0.1 n’est pas vulnérable, mais les versions 2.0.2 et 2.0.3 le sont. Selon le communiqué d’IBM, publié le 22 avril après que Ribeiro ait divulgué ses trouvailles, la vulnérabilité d’injection de commandes et la faille de téléchargement de fichiers arbitraires ont été corrigés dans la version 2.0.4. IBM a également déclaré que le problème du mot de passe par défaut est un choix de configuration et qu’il appartient aux administrateurs de le modifier.

Quant à la première vulnérabilité, le contournement de l’authentification, IBM a déclaré dans l’avis qu’ils “enquêtaient sur cela et fournirait de plus amples informations sur les actions correctives le cas échéant”.

La version actuelle de l’IDRM est la version 2.0.6.

ibm

Initialement, Ribeiro a tenté de coordonner la divulgation avec IBM via CERT/CC, mais IBM n’a pas voulu examiné le rapport de vulnérabilité:

«Nous avons évalué ce rapport et décidé qu’il ne remplissait pas les critères de notre programme de divulgation de vulnérabilité, car ce produit est uniquement destiné à un support ‘amélioré’ payé par nos clients», a répondu Big Blue.

«Ceci est décrit dans notre politique https://hackerone.com/ibm. Pour être éligible et participer à ce programme, vous ne devez pas être sous contrat pour effectuer des tests de sécurité pour IBM Corporation, ou une filiale IBM, ou un client IBM dans les six mois avant de soumettre un rapport. »

Cependant, après que Ribeiro ait divulgué ses trouvailles, Big Blue a déclaré que le rejet de ce rapport était une erreur.

“Une erreur de processus a entraîné une réponse incorrecte au chercheur qui a signalé cette situation à IBM”, a déclaré un porte-parole. «Nous avons travaillé sur des mesures de mitigation et elles seront discutées dans un avis de sécurité qui sera publié.»

Si cet article vous a plu, jetez un œil à notre article précédent.

S’abonner
Notifier de
guest
0 Commentaires
Annotations
Voir tout les commentaires
0
Nous aimerions connaître votre avis, laissez un commentaire.x
()
x