Nibbleblog - Pentesting HTB walkthrough

Pentesting RedOps2 - Nibble VM on HTB

🛠️ Nibble VM (HTB) - Walkthrough par Doomer

Objectif : Prise de contrôle de la machine via reconnaissance, brute-force, exploitation web

📡 Étape 1 – Scan initial avec Nmap

Commande exécutée :

sudo nmap -sV -sC 10.129.159.224 -v

Options : -sV (version des services), -sC (scripts par défaut), -v (verbeux)

Résultat :

  • Port 22 (ssh)
  • Port 80 (http)

⚠️ Je n'ai pas lancé de scan sur tous les ports. En pentest, toujours faire un scan complet TCP et UDP.

Nmap Recon

🌐 Étape 2 – Exploration du service HTTP

J'ouvre mon navigateur sur http://10.129.159.224

HTTP Browser

Je consulte le code source de la page...

Source Page

Indice visible : /nibbleblog/ directory. Nothing interesting here!

🔍 Étape 3 – Fuzzing avec Gobuster, Dirbuster, Feroxbuster

On commence avec Gobuster sur le répertoire /nibbleblog.

Gobuster

Wordlist utilisée : big.txt → Pas de résultat sur admin.php

Ensuite, test avec Dirbuster. C’est plus lent mais récursif.

Dirbuster

Enfin, test avec Feroxbuster – rapide, en couleur, et mode récursif par défaut.

Feroxbuster

🔓 Étape 4 – Page admin détectée

Une page admin.php est accessible. Code HTTP 200 confirmé !

Admin Page

En naviguant dans le répertoire, je trouve des fichiers intéressants.

Config Files

On y trouve les fichiers config.xml et users.xml.

Users XML

On confirme la présence du compte admin avec un e-mail associé.

Tests de connexion avec différents mots de passe :

  • admin:admin
  • admin:root
  • admin:nibbles ✅ Bingo !
Connexion Admin

💡 Accès admin confirmé. Prochaine étape : upload d’un fichier malicieux pour reverse shell.

🚪 Étape 5 – Exploration du dashboard admin

Une fois connecté, je parcours les différentes sections du tableau de bord.

🎯 Objectif : trouver un plugin ou un formulaire permettant l’upload de fichier.

En général, c’est une porte d’entrée pour un reverse shell si les contrôles sont faibles.

💡 Astuce RedOps2 : Toujours tester les fonctions d'upload avec une extension autorisée + payload PHP déguisé.

🧪 Étape 6 – Prochaine action

Préparer un payload de type PHP reverse shell et l'uploader via l'interface si possible.

Exemple avec un payload classique depuis Kali :

cp /usr/share/webshells/php/php-reverse-shell.php shell.php

Modifier IP/LPORT → puis upload et trigger depuis le navigateur.

Ne pas oublier d’ouvrir un listener côté attaquant :

nc -lvnp 4444

🔥 Attention : Bien identifier où le fichier est stocké et accessible publiquement après l’upload.

Prochaines étapes à documenter :

  • Exploration du reverse shell
  • Prise de foothold sur la machine
  • Élévation de privilèges (sudo, SUID, kernel exploit ?)

📌 Conclusion intermédiaire

🧠 Ce challenge est un bon exercice de reconnaissance, bruteforce de chemins et exploitation web simple.

Il démontre l’importance de :

  • Scanner tous les ports TCP/UDP
  • Inspecter les sources HTML
  • Utiliser plusieurs outils de fuzzing (gobuster, dirbuster, feroxbuster)
  • Tester les credentials faibles/admin

Commentaires

Posts les plus consultés de ce blog

Chemins relatifs et absolus sous Linux : explication claire + mémo pratique