Aller au contenu
Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Faille dans MySQL et MariaDB

Ce qui est rigolo avec les failles de sécurité, c’est qu’on pourrait être tenté de dire que plus les années passent, plus elles sont complexes et tordues à exploiter, mais en fait non… Certaines restent toujours très accessibles et simples, ouvrant des portes aussi grosses que votre tata Monique.

La dernière en date touche malheureusement MariaDB et MySQL, 2 bases de données très très très utilisées dans le monde (enfin, la seconde un peu plus que la première quand même ^^). Cette faille basique rend possible une attaque sur le mot de passe en saturant le logiciel de tentatives d’authentification. Il suffit de connaitre simplement le login qui va bien et qui la plupart du temps est root, et environ 300 essais ratés plus tard, la fonction memcmp accorde l’accès avec n’importe quel mot de passe. Magique !

En réalité, lorsqu’un utilisateur se connecte à une base MariaDB/MySQL, un jeton (token SHA généré à partir du mot de passe et d’une valeur aléatoire) est calculé et comparé à la valeur attendue. Et malheureusement, à cause de cette faille, il arrive que les 2 valeurs soient considérées comme égales alors qu’elles ne le sont pas.

Ce problème touche les versions de MySQL 5.1.61, 5.2.11, 5.3.5, 5.5.22 et toutes les versions de MariaDB. Ubuntu 64-bit 10.04, 10.10, 11.04, 11.10, et 12.04 sont toutes vulnérables ainsi que la version MySQL 5.5.23 de Fedora et d’OpenSUSE 12.1 64-bit. Par contre, les Debian, Red Hat Enterprise 4, 5, 6 et Gentoo 64 bits sont clean.

Pour tester chez vous, voici ce qu’il faut taper :

$ for i in `seq 1 1000`; do mysql -u root –password=bad -h 127.0.0.1 2>/dev/null; done

Maintenant la vraie question c’est : Comment se protéger ?

Et bien en attendant que cette faille soit patchée un peu partout, il suffit d’interdire l’accès à la base depuis l’extérieur. Logiquement, par défaut c’est le cas dans la plupart des distributions, mais si vous voulez être sûr, éditez le fichier my.cnf (moi, il se trouve ici /etc/mysql/my.cnf) puis dans la section [mysqld], ajoutez ou contrôlez que le paramètre bind-address est bien en 127.0.0.1.

Après fait la modif, relancez MySQL et voilà !

Source


Bitdefender Total Security 120 jours pour vous faire un avis

Bloque les menaces Des millions d’utilisateurs utilisent les solutions de sécurité Bitdefender dans le monde. Bitdefender s’appuie sur une intelligence artificielle avancée ainsi que sur d’autres technologies révolutionnaires afin d’anticiper, de détecter et de bloquer instantanément les menaces mêmes les plus récentes, avant qu’elles ne puissent vous causer le moindre préjudice.

Sans ralentir vos appareils. Découvrez le potentiel complet de votre appareil numérique. Bitdefender utilise un minimum de ressources, tandis que nos outils d’optimisation peuvent améliorer le temps de démarrage et les performances globales de votre ordinateur.

Essayez Bitdefender gratuitement – 120 jours au lieu de 30 !

Partenaire

Les articles du moment