Nmap y enumeración de servicios

El flujo típico al empezar una máquina es descubrir todos los puertos abiertos, lanzar scripts y versiones solo sobre esos puertos y luego enumerar cada servicio.

Tus datos Se guardan en este navegador y se aplican a todas las chuletas.

Nmap

Primer contacto

¿Linux o Windows? (TTL)
ping -c 1 10.10.11.20

TTL cerca de 64 suele ser Linux y cerca de 128, Windows.

Todos los puertos TCP (rápido)
sudo nmap -p- --open -sS --min-rate 5000 -n -Pn 10.10.11.20 -oG puertos
Sacar la lista de puertos
grep -oP '\d+(?=/open)' puertos | paste -sd, -
Versiones y scripts por defecto
nmap -sCV -p22,80 10.10.11.20 -oN objetivo

Cambia 22,80 por los puertos del paso anterior.

UDP (los más comunes)
sudo nmap -sU --top-ports 100 --open -n -Pn 10.10.11.20

Scripts NSE

Vulnerabilidades conocidas
nmap --script vuln -p445 10.10.11.20
Buscar scripts por nombre
ls /usr/share/nmap/scripts/ | grep -i smb
Fuzzing de rutas web con nmap
nmap --script http-enum -p80 10.10.11.20

Sin nmap (desde una máquina comprometida)

Puertos con bash Víctima
for p in $(seq 1 65535); do (echo > /dev/tcp/172.16.1.10/$p) 2>/dev/null && echo "$p abierto"; done
Puertos con nc Víctima
nc -zv -w1 172.16.1.10 1-10000 2>&1 | grep -i succeeded

Servicios

SMB (445)

Recursos compartidos sin credenciales
smbclient -L //10.10.11.20 -N
Con netexec (sesión nula e invitado)
netexec smb 10.10.11.20 -u '' -p '' --shares
netexec smb 10.10.11.20 -u 'guest' -p '' --shares
Con credenciales
netexec smb 10.10.11.20 -u 'usuario' -p 'Password123!' --shares
Descargar todo un recurso
smbclient //10.10.11.20/share -N -c 'recurse ON; prompt OFF; mget *'
Enumeración completa
enum4linux-ng -A 10.10.11.20

FTP (21)

Acceso anónimo
ftp [email protected]

Contraseña vacía o cualquiera. Usa binary antes de descargar binarios.

Descargarlo todo
wget -m --no-passive ftp://anonymous:[email protected]

SNMP (161/udp)

Probar comunidades
onesixtyone -c /usr/share/seclists/Discovery/SNMP/snmp.txt 10.10.11.20
Volcar el árbol
snmpwalk -v2c -c public 10.10.11.20
Procesos y argumentos (contraseñas en líneas de comandos)
snmpwalk -v2c -c public 10.10.11.20 1.3.6.1.2.1.25.4.2.1.5

NFS (2049)

Ver exportaciones
showmount -e 10.10.11.20
Montar
sudo mount -t nfs 10.10.11.20:/ruta /mnt/nfs -o nolock

DNS (53)

Transferencia de zona
dig axfr box.htb @10.10.11.20
Registros
dig any box.htb @10.10.11.20

Otros

Añadir el dominio a /etc/hosts
echo '10.10.11.20 box.htb' | sudo tee -a /etc/hosts
LDAP (389)
ldapsearch -x -H ldap://10.10.11.20 -s base namingcontexts
Redis (6379)
redis-cli -h 10.10.11.20 INFO
rpcbind (111)
rpcinfo -p 10.10.11.20