Sightless HackTheBox (Writeup)
Skills:
SQLPad Explotation
LINpeas enumeration system
Cracking Hashes (John)
Port Forwarding (chisel)
Froxlor (command injection )
Reconnaissance:
Création de l'espace de travail :
Nous établirons notre espace de travail en créant trois dossiers pour stocker les contenus importants, les exploits et les résultats de la reconnaissance à l'aide de Nmap.

Vérification de la Connectivité VPN
Vérification de la connexion VPN pour assurer une communication stable avec la machine cible.

Recherche des ports ouverts avec Nmap :
Exploration des ports ouverts et exportation dans le fichier "allPorts" dans le répertoire Nmap:

Analyse des ports ouverts avec extractPorts:
Utilisation de la fonction extractPorts pour afficher de manière synthétique les ports ouverts et les copier dans le clipboard (21,22,80)

Scan de la version des ports avec Nmap:
Utilisation de Nmap pour scanner la version des ports et extraction des informations dans le fichier "targeted" :

Pour résoudre les noms de domaine en adresses IP via DNS, on insère dans le fichier /etc/hosts le nom de domaine associé à son adresse IP:


On trouve un mail potentiel "[email protected]"

Vulnérabilité SQLPad:

http://sqlpad.sightless.htb

Version vulnérable:
L'instance à l'adresse http://sqlpad.sightless.htb utilise la version 6.10.0, qui présente une vulnérabilité connue.

Installation:
Exécution de l'exploit:
Nous restons à l'écoute sur le port 443 avec nc, et obtenons un accès.

Élévation de privilèges:
En accédant à la racine du système, nous trouvons deux utilisateurs : michael et node, ainsi qu'un script nommé linpeas.sh. Ce dernier sert à faire une énumération du système pour détecter des vulnérabilités potentielles.

Énumération du Système (LINpeas):

Nous utilisons Linpeas pour la reconnaissance des privilèges et découvrons les mots de passe hachés des utilisateurs root et michael.

Nous tentons de casser ces mots de passe avec John et le dictionnaire Rockyou :
Voici les mots de passe récupérés :
root:blindside
michael:insaneclownposse

Flag user.txt
En nous connectant avec l'utilisateur michael, nous obtenons le fichier user.txt. Cependant, le mot de passe root semble incorrect.

Chisel (redirection de port)
Nous allons d'abord observer les ports ouverts en interne avec la commande suivante :
Nous remarquons que le port 8080 attire notre attention.

En faisant une requête curl sur ce port, nous obtenons une page HTML contenant un formulaire de login avec un nom d'utilisateur et un mot de passe.

Pour exposer ce contenu interne vers l'extérieur, nous allons utiliser l'outil Chisel. Nous allons transférer le binaire Chisel vers notre machine en utilisant Python et wget :

Ensuite, nous mettons en écoute notre machine attaquante sur le port 8888 :
Sur la machine cible, nous exécutons le script Chisel en mode client pour se connecter à notre machine attaquante sur le port 8888. Nous redirigeons ainsi le localhost du port 8080 de la victime vers notre port 8081 :

De cette façon, nous avons exposé en externe le service qui tournait en interne sur le port 8080 (Froxlor).

admin:ForlorfroxAdmin
Creation new PHP version :
Après vous être connecté, accédez à la section « PHP », puis à « Versions PHP-FPM » et créez une nouvelle version. Dans le champ de commande de redémarrage de PHP-FPM, saisissez la commande suivante : cp /root/root.txt /tmp/root.txt

Enregistrez la configuration puis allez dans http://127.0.0.1:8081/admin_settings.php?start=phpfpm. Désactivez PHP-FPM et enregistrez les modifications, puis réactivez-le et enregistrez à nouveau. Cela déclenchera l'exécution de la commande de copie.

Voilà le fichier, il faut maintenant donner les droits :

Pour procéder, répétez le même processus mais remplacez la commande par :
Flag root : )

Pour se connecter, il faut juste copier la clé id_rsa (SSH de root) et refaire la procédure pour redonner les permissions:

Ensuite, connectez-vous avec la clé par SSH :


Mis à jour
Ce contenu vous a-t-il été utile ?