Reconocimiento inicial
# Detectar SMB con nmap
nmap -p 139,445 -sV --script smb-vuln* 10.10.10.0/24
# Verificar versión y seguridad
nmap -p 445 --script smb-security-mode 10.10.10.X
SMB opera en el puerto 445/TCP (SMB directo) y 139/TCP (NetBIOS sobre SMB). Siempre escanear ambos.
Enumeración con smbclient
# Listar shares (sin credenciales)
smbclient -L //10.10.10.X -N
# Conectar a un share específico
smbclient //10.10.10.X/share -N
# Comandos dentro de smbclient
smb: \> ls # listar archivos
smb: \> get file # descargar archivo
smb: \> put file # subir archivo
smb: \> recurse ON # modo recursivo
smb: \> mget * # descargar todo
Enumeración con enum4linux
# Enumeración completa
enum4linux -a 10.10.10.X
# Solo usuarios
enum4linux -U 10.10.10.X
# Solo grupos
enum4linux -G 10.10.10.X
# Solo shares
enum4linux -S 10.10.10.X
CrackMapExec (CME)
# Verificar credenciales
crackmapexec smb 10.10.10.X -u usuario -p contraseña
# Listar shares con credenciales
crackmapexec smb 10.10.10.X -u usuario -p contraseña --shares
# Ejecutar comando remoto
crackmapexec smb 10.10.10.X -u usuario -p contraseña -x "whoami"
# Spray de contraseñas
crackmapexec smb 10.10.10.0/24 -u users.txt -p passwords.txt
El spray de contraseñas puede provocar bloqueo de cuentas. Verificar la política de lockout antes de ejecutar (
net accounts /domain).Impacket
# Listar shares
impacket-smbclient usuario:contraseña@10.10.10.X
# Montar share localmente
sudo mount -t cifs //10.10.10.X/share /mnt/smb -o user=usuario,password=contraseña
Conclusión
SMB es uno de los vectores más ricos en pentests internos. La combinación de nmap + enum4linux + CME cubre la mayoría de los escenarios. Siempre documentar los shares accesibles y los archivos sensibles encontrados.
COMPARTIR ESTE POST
// COMENTARIOS · GISCUS
Los comentarios se sincronizan con GitHub Discussions. Inicia sesión con GitHub →