Solution de vilerio pour Snake

intro misc

1 décembre 2023

En établissant une connexion netcat avec le serveur, nous sommes face à une console python : nous pouvons le vérifier en envoyant l’instruction print("Test") qui va bien afficher “Test” dans la console.

>>> print("Test")
Test

Il existe en python un module très connu nommé “os”, qui permet d’intéragir directement avec le système d’exploitation, et comme la description nous demande de lire un fichier, c’est le module idéal !

Nous commençons donc par importer ce module, avec l’instruction import os, puis nous allons utiliser la méthode os.system() qui va nous permettre d’exécuter des commandes bash comme si nous avions un accès direct au shell.
Nous voulons afficher la liste des fichiers afin de voir si le flag.txt est bien présent, nous allons donc exécuter la commande ls en utilisant la méthode os.system() qui prend en argument la commande en question :

>>> import os
>>> os.system("ls")
flag.txt
0

On constaste que le fichier flag.txt est bien dans le répertoire courant, nous allons pouvoir le lire (le 0 renvoyé par la commande est le code d’erreur, lorsqu’on exécute une commande sous un système unix/unix like, un code d’erreur est renvoyé en fonction de l’erreur, 0 étant le code envoyé si jamais l’exécution s’est déroulée sans souci) avec la commande cat flag.txt :

>>> os.system("cat flag.txt")
FCSC{xxxxxxxxxxxxxxx}
0

(ici le flag a été modifié, à vous de le trouver ;)