What’s up guys ? il y a un petit moment que je ne vous ai pas parlé de CTF, donc me revoilà !!
Aujourd’hui, il est temps d’un nouveau challenge « Simple CTF ». Il est disponible sur TryHackMe pour la pratique des tests d’intrusions. D’une difficulté facile, si vous avez de bonnes bases et êtes attentif aux petits détails.
Objectifs : Trouver les deux Flags user.txt et root.txt
- Collecte d’informations
Comme d’habitude je commence toujours par effectuer un scan du réseau :
nmap -sC -sT 10.10.80.40
Il est identifié trois services exécutés sur la machine cible. FTP où le service de protocole de transfert de fichiers exécutés sur le port 21, 80 avec le service HTTP. Et le dernier port 2222 exécutant le service EtherNetIP-1.
Q1 : How many services are running under port 1000 ?
Réponse : 2
Q2 : What is running on the higher port ?
Réponse : ssh
Q3 : What’s the CVE you’re using against the application ?
Afin de répondre à cette question, je continue ma collecte d’infirmations. je décide de regarder côté web.
Énumération sous domaine :
dirb http://10.10.80.40
Finalement, le résultat est fructueux; il y a deux pages qui m’intéressent : /robots.txt et /simple
Un autre sous domaine a été découvert : /openemr-5_0_1_3, j’effectue une petite visite de la page :
Rien d’intéressant, je continue avec l’autre sous domaine :
Voilà ! j’ai découvert qu’il y a un CMS : CMS MADE SIMPLE. Il me faut trouver un exploit afin d’obtenir le CVE, pour cela je vais utiliser searchsploit :
Nickel je viens de trouver un exploit, il ne me reste plus qu’à trouver le CVE et pour cela une petite recherche s’impose :
Réponse : CVE-2019-9053
Q4 : To what kind of vulnerability is the application vulnerable ?
Réponse : sqli
Q5 : What’s the password ?
Maintenant, je passe à la phase d’exploitation. Il me faut utiliser l’exploit précédent, voici la commande :
python 46635.py -u http://10.10.80.40/simple/ –crack -w /usr/share/wordlists/rockyou.txt
Après l’exécution de la commande, j’obtiens le résultat suivant :
Réponse : secret
Q6 : Where can you login with the details obtained ?
Je me souviens qu’il y a le service ssh actif sur le port 2222.
Réponse : SSH
Q7 : What’s the user flag ?
Alors, pour obtenir le flag, je dois m’authentifier en utilisant le ssh :
ssh mitch@10.10.80.40 -p 2222
Bingo, en utilisant les commandes de base de Linux comme ls et cat j’ai pu lire le flag.
Réponse : G00d j0b, keep up!
Q8 : Is there any other user in the home directory? What’s its name ?
Pour voir s’il y a un autre utilisateur, je me déplace dans le répertoire /home :
cd /home puis la commande ls
Réponse : sunbath
Q9 : What can you leverage to spawn a privileged shell ?
Cette étape est très importante, je vais vous montrer le réflexe que vous devez avoir afin de mener à bien l’escalade des privilèges vers root. Dans un premier temps je tape la commande suivante :
sudo -l
Puis je vais aller chercher sur le site GTFObins la commande pour être root :
Donc, je dois taper la commande : sudo vim -c « :!/bin/bash » dans ce cas de figure j’ai utilisé les guillemets, les apostrophes fonctionnent aussi mais avec un petit message d’erreur.
Petite vérification :
Réponse : vim
Q10 : What’s the root flag ?
Me voilà à la dernière question, la lecture du flag root.txt :
Réponse : W3ll d0n3. You made it!
C’est la fin pour ce CTF les amis ! j’espère que vous n’avez pas eu trop de difficultés, c’est un bon moyen de vérifier ses compétences et les acquis pour un débutant d’où le niveau « Easy ». Si vous avez des questions ou des recommandations n’hésitez pas à me laisser un commentaire ou me contacter.
Je vous dis à très vite, PEACE !!!