[HA Joker][CTF][TryHackMe]
Challenge niveau medium du site TryHackMe

" Batman hits Joker"
[Task 1] Enumération des Services
Commençons comme d'habitude avec les classiques Nmap et Gobuster
1. Nmap
2. Gobuster
Ces deux scans nous permettre de répondre aux premières questions du challenge.
3. Réponses aux questions
What version of Apache is it?
2.4.29
What port on this machine not need to be authenticated by user and password?
80
There is a file on this port that seems to be secret, what is it?
secret.txt
There is another file which reveals information of the backend, what is it?
phpinfo.php
When reading the secret file, We find with a conversation that seems contains at least two users and some keywords that can be intersting, what user do you think it is?
joker
What port on this machine need to be authenticated by Basic Authentication Mechanism?
8080
[Task 2] Bruteforce
Voici l'écran de 'Login' que nous allons attaquer

1. Burp
Lançons Burp avec "Proxy Interception" sur "on" et entrons "joker" et "password".

Nous constatons que la validation du login est du type basic user:password en base 64.
Nous pouvons alors lancer hydra en mode http-get
2. Hydra
Maintenant que nous avons l'utilisateur joker avec son password hannah, nous pouvons lacer une exploration plus poussée du site en port 8080 avec Nikto et Gobuster.
3. Nikto
Pour nous simplifie la vie, nous pouvons filtrer les résultats et ne montrer que les infos 'interesting'
4. Gobuster
Dans les deux cas, nous détectons la présence d'un répertoire '/administrator/' ainsi que l'existence d'un fichier 'backup.zip' comme évoqués dans le challenge.
5. John The Ripper
Téléchargeons le fichier backup.zip et attaquons-le avec John The Ripper
Decompressons backup.zip localement


Après avoir extrait le fichier backup.zip, intéressons-nous au fichier joomladb.sql trouvé dans le sous-répertoire backup/db
Comme suggéré dans le challenge, cherchons les infos concernant un 'Super Duper User'
Nous savons maintenant que l'id de ce Super Duper User est 'admin' et nous avons un hash de son password.
Confions ce hash à John The Ripper
Nous pouvons désormais répondre à toute une série de questions et toutes ces infos vont nous permettre de prendre pied sur la machine cible dans la phase d'exploitation.
6. Réponse aux questions (suite)
At this point we have one user and a url that needs to be aunthenticated, brute force it to get the password, what is that password?
hannah
Yeah!! We got the user and password and we see a cms based blog. Now check for directories and files in this port. What directory looks like as admin directory?
/administrator/
We need access to the administration of the site in order to get a shell, there is a backup file, What is this file?
backup.zip
We have the backup file and now we should look for some information, for example database, configuration files, etc ... But the backup file seems to be encrypted. What is the password?
hannah
Remember that... We need access to the administration of the site... Blah blah blah. In our new discovery we see some files that have compromising information, maybe db? ok what if we do a restoration of the database! Some tables must have something like user_table! What is the super duper user?
admin
Super Duper User! What is the password?
abcd1234
[Task 3] Exploitation
Passons à l'exploitation des données récoltées pour prendre pied dans la machine cible.
Commençons par nous connecter à Joomla avec les crédentiels admin:abcd1234.






Affichons la page error.php dans firefox
http://10.10.238.221:8080/templates/beez3/error.php

Comme à chaque fois, consolidons ce shell
[Task 4] Escalade des privilèges [lxd]
A priori nous devrions passer par ma méthode d'escalade des privilèges habituelle mais comme nous avons constaté que l'utilisateur courant [www-data] était membre du groupe [lxd], nous allons pouvoir faire une escalade de privilèges en utilisant une faille dans la mise en place de conteneurs LXD
1. Sur la machine Kali
2. Sur la machine cible
Ne pas oublier d'aller dans le répertoire /mnt/root du conteneur pour y retrouver tous les fichiers de la machine cible.
3. Réponse à la dernière question
What is the name of the file in the /root directory?
final.txt
Mis à jour
Ce contenu vous a-t-il été utile ?