Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2012-2122 — CVE-2012-2122 - Contournement d'authentification MySQL | Kitploit
Outils/GitHubGitHub/k3ystr0k3r/cve-2012-2122
Attaques de Mots de PasseAnalyse des VulnérabilitésExploitationTests d'IntrusionAuthentificationApprentissage et ÉducationSécurité des Bases de Données
GitHubk3ystr0k3r/cve-2012-2122

CVE-2012-2122

CVE-2012-2122 - Contournement d'authentification MySQL

Voir le dépôt
3il y a 2 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2012-2122 - Contournement de l'authentification MySQL

Preuve de concept (PoC) pour CVE-2012-2122, une vulnérabilité critique de contournement de l'authentification affectant les serveurs MySQL et MariaDB vulnérables.

Avertissement

Ce projet est destiné uniquement à des fins éducatives, de recherche en sécurité et de tests de pénétration autorisés. N'utilisez pas ce logiciel contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas une autorisation explicite de tester.


CVE-2012-2122 est une vulnérabilité de contournement de l'authentification découverte dans la logique de vérification des mots de passe de MySQL.

En raison d'un bogue de conversion/comparaison d'entiers, l'authentification peut réussir par erreur lorsqu'une comparaison de mot de passe invalide est évaluée comme égale dans certaines conditions.

Plutôt que de nécessiter la connaissance d'un mot de passe valide, un attaquant peut tenter à plusieurs reprises l'authentification en utilisant des mots de passe arbitraires jusqu'à ce que le bogue de comparaison soit déclenché.

La probabilité de succès est d'environ :

  • 1 tentative sur 256 (0,39 %)

En raison de cette probabilité relativement élevée, les outils automatisés peuvent généralement contourner l'authentification en quelques centaines de tentatives de connexion.


Sévérité

MétriqueValeur
CVECVE-2012-2122
CVSS v27.5 (Élevé)
Vecteur d'attaqueRéseau
AuthentificationAucune
Interaction utilisateurAucune
ImpactContournement de l'authentification

Versions affectées

La vulnérabilité affecte les builds de MySQL compilés avec des optimisations de compilateur vulnérables, y compris des versions telles que :

  • MySQL 5.1.x
  • MySQL 5.5.x
  • Certaines versions de MariaDB dérivées de code vulnérable

Le problème a principalement affecté les distributions Linux dont le comportement du compilateur a exposé le bogue.

Toutes les installations de ces versions ne sont pas vulnérables.


Détails techniques

Lors de la vérification du mot de passe, MySQL compare en interne deux valeurs de hachage en utilisant la fonction memcmp().

Dans des circonstances normales :

root@kitploit:~
memcmp(hash1, hash2)

retourne :

  • 0 quand ils sont égaux
  • non nul quand ils sont différents

La vulnérabilité est apparue parce que la valeur de retour était stockée dans un entier signé et convertie plus tard d'une manière qui permettait à certaines valeurs non nulles d'être interprétées comme un succès d'authentification.

Logique simplifiée :

root@kitploit:~
if (memcmp(hash1, hash2) == 0)
{
    // Login successful
}

Avec un comportement de compilateur vulnérable, des valeurs de retour spécifiques de memcmp() pouvaient satisfaire incorrectement la comparaison.

En conséquence, des mots de passe incorrects réussissaient parfois l'authentification.


Exploitation

Un attaquant a seulement besoin :

  • D'un accès réseau au service MySQL
  • D'un nom d'utilisateur valide

Aucune connaissance du mot de passe n'est requise.

L'attaquant soumet en continu des tentatives de connexion en utilisant des mots de passe aléatoires.

Finalement, une authentification réussit à cause du bogue de comparaison.

Flux d'attaque typique :

root@kitploit:~
Attempt #1
    ↓
Authentication Failed

Attempt #57
    ↓
Authentication Failed

Attempt #141
    ↓
Authentication Failed

Attempt #237
    ↓
Authentication Successful

Le succès moyen se produit environ une fois toutes les 256 tentatives.


Impact

Une exploitation réussie permet à un attaquant de :

  • S'authentifier sans le mot de passe correct
  • Accéder au contenu de la base de données
  • Extraire des informations sensibles
  • Modifier des enregistrements
  • Créer ou supprimer des bases de données
  • Escalader les attaques contre les applications reposant sur MySQL

Si les identifiants administratifs sont ciblés, un contrôle total du serveur de base de données peut être obtenu.


Détection

Les indicateurs incluent :

  • Un grand nombre de tentatives d'authentification échouées
  • Des connexions répétées rapides depuis le même client
  • Une authentification réussissant après de nombreux échecs
  • Des modèles d'accès inhabituels à la base de données

Examinez les journaux d'authentification MySQL pour une activité excessive de tentatives de connexion échouées.


Atténuation

L'atténuation recommandée est de mettre à niveau vers une version corrigée.

Des mesures défensives supplémentaires incluent :

  • Restreindre l'exposition réseau de MySQL
  • Limiter l'accès à l'aide de pare-feu
  • Désactiver les connexions root à distance
  • Imposer des comptes de base de données avec privilèges minimaux
  • Surveiller les journaux d'authentification pour détecter les comportements de force brute
  • Exiger un accès VPN ou réseau interne lorsque possible

Références

  • CVE-2012-2122
  • Oracle MySQL Security Advisory
  • MariaDB Security Advisory
  • NVD (National Vulnerability Database)

root@kitploit:~
## Exemple d'utilisation

```bash
python3 exploit.py -ip <target>

Exemple :

root@kitploit:~
python3 exploit.py -ip 192.168.1.100

Objectif pédagogique

Ce dépôt démontre comment un bogue d'implémentation subtil dans la logique d'authentification peut complètement compromettre la vérification des mots de passe.

Bien que la vulnérabilité ait plus d'une décennie, elle reste une étude de cas importante dans :

  • Le développement sécurisé de logiciels
  • Le comportement dépendant du compilateur
  • La conception de l'authentification
  • La programmation défensive
  • La recherche en vulnérabilités
Télécharger l’outil