Bypass de login par Injection SQL

SQL injection vulnerability allowing login bypass

  • Contexte / vulnérabilité : fonction de connexion vulnérable à l’injection SQL. Requête typique côté serveur : SELECT * FROM users WHERE username = 'administrator'--' AND password = ''

  • Objectif du lab : se connecter en tant qu’utilisateur administrator sans connaître le mot de passe.

  • Paramètre vulnérable : champ username (ou password selon l’implémentation).

  • Preuve de concept (payload fourni) :

  • Interprétation courte : injecte une condition toujours vraie (1=1) qui neutralise la vérification du mot de passe, entraînant l’authentification comme le premier enregistrement retourné (souvent administrator).

  • Exemple d’utilisation : envoyer username = ' or 1=1-- - (et laisser/mettre n’importe quel password) → la clause WHERE devient vraie pour toutes les lignes et la session est ouverte en tant qu’un utilisateur (souvent l’administrateur).

  • Résultat attendu : connexion réussie en tant qu’administrateur sans mot de passe valide.

  • Impact : compromis total d’un compte à privilèges, escalade d’accès, exposition/altération de données sensibles et contrôle applicatif.

Mis à jour