Grâce aux injections SQL, vous pouvez par exemple, vous identifier comme un administrateur sur un site, alors que vous ne l'êtes pas !
<%La Théorie%>Les requêtes SQL de connexion sont souvent semblable à ca :
SELECT * FROM `user` WHERE user='$user' AND pass='$password'
Ce qui donne ceci après (pour la personne qui se connecte):
SELECT * FROM `user` WHERE user='mama34' AND pass='jesus'
Pour que l'authentification soit bonne il faut que le nom d'utilisateur 'ET' le mot de passe soient bon !§
<%Mise en Pratique%>Maintenant si vous mettez ce login : 'onsenfous' OR 1+1=2 --' et pas de mot de passe :
SELECT * FROM `user` WHERE user='onsenfous' OR 1+1=2 --'' AND pass='jesus'alors la base de données vérifie si le nom d'utilisateur est bon 'OU' si 1+1=1 et met tout le reste en commentaire.
1+1 fessant effectivement 2, vous êtes connecté !
Article écrit par Clint le 01/12/2009, sous license Signature de l'auteur : « trop de paroles noient la vérité »