SQLi Bypass
Consignes
Aucune pour ce niveau
Réalisation
Effecter une connexion au site du challenge. Une page de login est disponible. On peut donc effectuer une injection SQL.
Pour comprendre comment ceci fonctionne, voici un exemple de requĂȘte SQL qui est faite pour lire le contenu des valeurs entrĂ©s par l'utilisateur :
SELECT * FROM users WHERE username = '$user' AND password = '$pass';
Dans la page de login, si $user
vaut :
' OR 1=1 --
Nous pouvons mettre la aleur que l'on veut en mot de passe, il ne sera plus pris en compte, cela est dĂ» au fait que la requĂȘte est maintenant similaire Ă celle-ci :
SELECT * FROM users WHERE username = '' OR 1=1 -- ' AND password = 'caca';
Ici, le but est donc de venir couper la requĂȘte SQL et de dire que si le user est vide, OU que 1=1 (ce qui est toujours vrai) alors on accĂšde au site.
La fin de la requĂȘte contient --
, ce qui permet de mettre la suite de la requĂȘte en commentaire. Le programme ne prend donc plus en compte la valeur du mot de passe renseignĂ© par l'utilisateur.
On entre donc dans les champs de connexion de la page de login la valeur suivante :
' OR 1=1 --
Une fois validé, on accÚde donc au FLAG :
2600{yR60KvlESw5AHWvSYXqG4g}
Last updated