Web - Serveur
Web - Serveur - SQL injection - Insert
Salut tout le monde !
Je vais essayé de ne pas trop spoil le chall :)
Ca fait plusieurs jours que je galère à résoudre l’injection sql par insertion. J’ai beau retourner le problème dans tous les sens, j’ai du mal à voir comment extraire correctement les données :(
J’ai bien identifié le champ à injecter, réussi à sortir quelques infos (uniquement sous forme de nombre), essayé de faire ressortir une erreur explicite, cherché
dans tous les sens pour faire de concaténation de chaine...etc Mais rien n’y fait, je n’arrive pas :(
J’aimerais donc savoir si je suis sur le bon chemin ou si je suis complètement à côté de la plaque ? Est ce que le fait de devoir concaténer des chaines (ou autres types)
est la bonne solution ?
Merci d’avance pour votre aide.
Ridrum
Web - Serveur - SQL injection - Insert
Bonjour,
Quelque chose me titille : Tu dis avoir réussi a récupérer des informations , dans ce cas tu as compris l’exploit ! Ne te reste plus qu’a tout sortir de la meme facon !
Sinon, as tu repéré comment agit le WAF sur les inputs ?
Quel input a l’air inectable ?
Comment est formé une requête d’insertion en sql ?
Si tu arrives a répondre a ces questions, tu as tout pour valider ce challenge ! Dis toi bien que tu en as pas pour 10 minutes ... Meme une fois que tu auras compris le truc , il te faudra compter pas mal de temps avant de pouvoir valider le challenge ;)
Bon courage
Web - Serveur - SQL injection - Insert
Merci pour ta réponse :)
Je pense pouvoir répondre à l’ensemble de ces questions et après une longue réflexion sur le chall, je n’y arrive toujours pas.
Voici ce que j’observe en détail (SPOIL) :
-> impossible d’utiliser les fonctions sur les string (du type SUBSTRING, CONV, LEFT, RIGHT...etc) puisqu’elles sont filtrés (WAF ?)
-> possibilité d’extraire UNIQUEMENT des valeurs décimales (nombre de table, premier caractère de table...etc)
Est ce que mes deux observations sont correctes ?
Merci d’avance pour votre aide !
Web - Serveur - SQL injection - Insert
J’ai enfin réussi à me débloquer et valider le chall :)
Pour aider les personnes qui aurait comme moi du mal à résoudre le challenge, le plus important est de connaître comment sont formés les requêtes d’insertion.
La page suivante pourrait être utile : https://dev.mysql.com/doc/refman/5.7/en/insert-select.html
Web - Serveur - SQL injection - Insert
Bonjour R !drum,
Je suis passé par les mêmes déductions que toi, et j’ai passé beaucoup de temps pour contourner ces filtres.
Mais à partir d’un moment ca devient compliqué et impossible.
Repose toi et remet tes idées au claire, ensuite tu trouveras cela super simple !
Cdt,
Agrakan.
Web - Serveur - SQL injection - Insert
Merci pour ta réponse Agrakan :)
J’ai enfin réussi à valider le chall !
Un petit indice pour ceux qui galèrent : http://dev.mysql.com/doc/refman/5.7/en/insert.html ;)
Web - Serveur - SQL injection - Insert
J’arrive bien à récupérer des informations grâce à l’insert, j’ai même réussis à récupérer un compte admin avec mot de passe et mail mais je n’arrive pas à valider le challenge. Qu’est-ce qu’on est censé trouver ? Un mot de passe, un fichier, un mail ?
Web - Serveur - SQL injection - Insert
Pour ceux qui sont bloqués, partez pas dans des requêtes de 40km de long, la réponse est "simple" (tout est relatif, on parle d’un chall difficile, faut quand même un peu réfléchir). Lisez bien la doc SQL sur les syntaxes des méthodes d’insertion dans les BDD, et une fois l’astuce comprise pour récupérer du "texte" , ca se regle en deux requêtes :)
Bonne chance.