/ tumctf

TUMCTF - Prokrastination

Enoncé :
Epreuve MISC
So you like hacking? We like wasting time. I hope you do too.
tmtp://#join=H4x0rPsch0rr

Réalisation :
Après quelques recherches sur le net on découvre que tmtp://#join=H4x0rPsch0rr est un lien pour se connecter à un serveur TrackMania Nations Forever. On télécharge donc la version démo et rejoins le serveur en allant dans l'onglet Exploreur du jeu.

Une fois connecté au serveur il faut maintenant trouver le but du challenge ! Faut-il battre l'admin ? Trouver le flag caché dans la carte ?

La solution est bien plus exotique, il faut tout d'abord analyser les commandes disponibles dans le jeu en tapant /helpall. On découvre alors la commande /ctfscores.
helpall


Premier test : /ctfscores * on voit alors toutes les équipes et les scores comme suit :
scores


On voit que certains joueur ont déjà réalisé des commandes faisant penser à du SQL. On tente alors la commande /ctfscores HXP' UNION SELECT 1,2,3-- pour voir si on peut faire une injection SQL.
injection


Bingo, ça fonctionne. Il faut maintenant découvrir le type SQL utilisé après plusieurs essais et grâce à la commande /ctfscores XHP' UNION SELECT 1,sqlite_version(),3-- nous validons être sur du sqlite.
sqlite


La prochaine étape est de trouver la table contenant le flag. Malgré plusieurs essais impossible de ressortir le nom des tables de la database. Le but étant de trouver le flag, on test avec la commande suivante /ctfscores XHP' UNION SELECT 1,2,3 from flag --, pas d'erreurs, notre injection fonctionne il ne reste plus qu'à sortir le flag avec notre dernière commande : /ctfscores XHP' UNION SELECT 1,*,3 from flag --
flag


Voilà le résultat d'un challenge très atypique et intéressant à réaliser !!