0
Laboratorio Práctico: Shadow SMB – Explorando Recursos Ocultos en la Red
Laboratorio Práctico: Shadow SMB – Explorando Recursos Ocultos en la Red

0. Descubrimiento Inicial con nbtscan

NetBIOS Name Service (NBNS) es un protocolo heredado de Windows usado para anunciar nombres de host y servicios en redes locales. Aunque obsoleto, aún es común en redes AD internas.

nbtscan permite descubrir rápidamente nombres NetBIOS, direcciones IP, roles de host (Workstation/Server) y, en algunos casos, nombres de dominio.

nbtscan 192.168.4.0/24

Este escaneo identifica:

  • CERTISYSNETDC: probable controlador de dominio Windows.
  • DEBIAN: posible servidor intermedio u objetivo lateral.
Resultado de nbtscan

1. Instalación de CrackMapExec

CrackMapExec (CME) es una herramienta de post-explotación avanzada utilizada ampliamente por Red Teams y pentesters para automatizar auditorías en entornos Windows. A través de un conjunto modular de funciones, permite validar configuraciones SMB, ejecutar comandos remotos, detectar sesiones activas, obtener shares, y verificar credenciales contra servicios como SMB, WinRM y LDAP.

Su objetivo es facilitar el reconocimiento en profundidad y la explotación dentro de redes AD. CME es una herramienta silenciosa, rápida, y particularmente útil tras obtener credenciales o cuando se busca validar el acceso a múltiples máquinas del dominio.

apt install crackmapexec -y

Una vez instalado, CME se convierte en una navaja suiza para movimientos laterales, escalamiento de privilegios, extracción de secretos de LSASS, dumping de SAM y más. Aquí comenzaremos con su módulo de escaneo SMB, ideal para identificar recursos abiertos o mal configurados.

Instalación de CrackMapExec

2. Escaneo SMB y Detección de Dominio

Server Message Block (SMB) es un protocolo utilizado por sistemas Windows para compartir archivos, impresoras y puertos entre máquinas de una red. El puerto TCP 445 es su canal principal en versiones modernas de Windows, y su análisis es fundamental para descubrir configuraciones peligrosas como accesos sin autenticación, permisos laxos o sistemas con servicios inseguros expuestos.

Mediante CrackMapExec ejecutamos un reconocimiento básico contra la IP objetivo:

crackmapexec smb 192.168.4.12

El resultado nos entrega información de alto valor como:

  • Nombre del dominio: permite saber si el host está unido a un entorno Active Directory y bajo qué controlador.
  • Arquitectura y versión del sistema: útil para decidir vectores de explotación específicos (por ejemplo, si es vulnerable a EternalBlue o PrintNightmare).
  • Configuraciones de seguridad y políticas: como SMB signing, presencia de sesiones abiertas, y versiones del protocolo.

Este tipo de escaneo forma parte del reconocimiento horizontal: el objetivo es entender la postura del host y sus interconexiones para determinar el siguiente paso: acceder a sus recursos compartidos, explotarlo directamente o pivotar hacia objetivos más críticos como el Domain Controller.

Detección de sistema operativo y dominio con CME

3. Enumeración de Recursos Compartidos

En entornos Windows, los recursos compartidos (shares SMB) permiten que usuarios accedan a archivos, carpetas o impresoras en red. Sin embargo, una configuración incorrecta puede permitir que usuarios no autenticados (anónimos) accedan a información sensible, lo cual constituye una falla de seguridad grave.

Usamos CrackMapExec para probar el acceso anónimo sin usuario ni contraseña:

crackmapexec smb 192.168.4.12 -u '' -p '' --shares

Este escaneo revela un share crítico accesible públicamente: \\192.168.4.12\BankSecrets. La presencia de nombres sensibles como “Secrets”, “Confidential” o “Finance” suele indicar información de alto valor.

En auditorías reales, la combinación de nombres descriptivos + permisos anónimos suele ser suficiente para comprometer datos bancarios, credenciales o scripts maliciosos ocultos en la red.

Shares visibles anónimamente

4. Confirmación de Sistema Operativo con Nmap

Nmap es la herramienta por excelencia para escaneo de red, fingerprinting de servicios y detección de vulnerabilidades. En este caso usamos el script smb-os-discovery para extraer metadatos del sistema vía SMB.

nmap -p 445 --script smb-os-discovery 192.168.4.12

Este script obtiene:

  • Nombre NetBIOS y dominio asociado.
  • Nombre DNS interno del host (si está en AD).
  • Versión exacta de Windows y su arquitectura (x86/x64).

Esta información permite ajustar exploits o herramientas específicas. Por ejemplo, si detectamos que el host corre Windows Server 2012 R2 sin parches, podríamos intentar un ataque EternalBlue.

Fingerprinting SMB con Nmap

5. Enumeración Manual con smbclient

smbclient es parte de la suite Samba y actúa como un cliente interactivo (tipo FTP) para interactuar con recursos compartidos SMB. Permite listar shares, conectarse, descargar, subir archivos e incluso ejecutar comandos internos SMB desde consola.

smbclient -L //192.168.4.12/ -N

El parámetro -N indica que no se usará autenticación, ideal para comprobar accesos anónimos. El servidor en este caso bloquea SMBv1 (correcto) pero acepta SMBv2/3, que son versiones más seguras. Sin embargo, la visibilidad de recursos sin autenticar sigue siendo un fallo crítico.

En pentesting, el uso de smbclient permite además descargar manualmente archivos sospechosos (como scripts .vbs, DLLs, backups, archivos Excel con macros) para análisis estático posterior.

Conexión manual con smbclient

6. Análisis Profundo con enum4linux

enum4linux es una herramienta de enumeración avanzada basada en SMB que utiliza llamadas RPC para extraer gran cantidad de información de entornos Windows sin necesidad de autenticación.

enum4linux 192.168.4.12

Permite recolectar:

  • Listas de usuarios válidos (para ataques de fuerza bruta).
  • Grupos, políticas y usuarios conectados actualmente.
  • SIDs (Security Identifiers) que ayudan a identificar roles o jerarquías.
  • Shares disponibles y sus permisos (lectura/escritura).

Es ideal para comenzar una cadena de ataque: si obtenemos usuarios válidos (por ejemplo, jvaldez, adminprint, etc.), podemos probar credenciales por diccionario, ataques de Kerberos (AS-REP Roasting), NTLM relay o pass-the-hash.

Resultado de enum4linux

⚠️ Riesgo Crítico: Exposición de Datos Sensibles

  • ISO/IEC 27001: A.9.1.2 – Control de acceso a recursos de red
  • NIST SP 800-53: AC-6 – Mínimos privilegios
  • OWASP Top 10: A5 – Configuración incorrecta
  • GDPR: Art. 32 – Seguridad del tratamiento de datos personales

Permitir acceso anónimo a un recurso como \\192.168.4.12\BankSecrets representa una falla de seguridad de alto impacto. Este tipo de configuración viola los principios básicos de control de acceso y puede comprometer:

  • Confidencialidad: acceso a transferencias bancarias, claves API, tokens JWT o archivos de configuración con credenciales incrustadas.
  • Integridad: posibilidad de modificar archivos ejecutables, scripts o logs, abriendo puertas a malware o persistencia.
  • Disponibilidad: un atacante podría cifrar los archivos accesibles como parte de un ataque de ransomware interno.

Además, en entornos regulados (PCI-DSS, GDPR, ISO), esto puede acarrear multas, suspensión de servicios financieros, o impacto reputacional irreversible.

Leave a Reply

Your email address will not be published. Required fields are marked *