RelayInformer — Evaluación de Relay
El módulo RelayInformer permite evaluar si los servicios de red (SMB, LDAP, HTTP, MSSQL) son vulnerables a ataques de NTLM relay. Antes de ejecutar ataques de relay, es fundamental verificar si el servicio destino requiere firma (signing) o channel binding, ya que estos mecanismos previenen el relay.
Todos los comandos usan el prefijo relay-informer.
Agentes compatibles: Beacon, Gopher, Kharon
Plataforma: Windows
Conceptos clave
Un ataque NTLM relay intercepta una autenticación NTLM y la reenvía a otro servicio para ejecutar acciones en nombre de la víctima. Para que funcione:
- El servicio destino no debe requerir signing (firma de mensajes)
- El servicio destino no debe requerir channel binding (vinculación de canal TLS)
RelayInformer verifica ambos requisitos sin realizar ningún ataque, solo consultando la configuración del servicio.
relay-informer smb
Verifica si el servidor requiere firma SMB2 (SMB signing).
Cuándo usarlo: Antes de intentar relay a SMB (e.g., con ntlmrelayx, PsExec via relay). Si SMB signing está requerido, el relay a SMB fallará.
relay-informer smb DC01
relay-informer smb FILESERVER01
relay-informer smb 192.168.1.10| Argumento | Requerido | Descripción |
|---|---|---|
host | Sí | Hostname o IP del servidor |
Interpretación de resultados:
- Signing Required: NO → Vulnerable a relay SMB. Puedes reenviar autenticaciones capturadas a este servidor.
- Signing Required: YES → No vulnerable. Los Domain Controllers por defecto requieren firma SMB.
Nota: Por defecto, los Domain Controllers requieren SMB signing, pero los servidores miembros y estaciones de trabajo no. Enfoca tus ataques de relay SMB en máquinas que no son DCs.
relay-informer ldap
Verifica la configuración de firma LDAP (LDAP signing) y channel binding LDAPS en un Domain Controller.
Cuándo usarlo: Antes de intentar relay a LDAP/LDAPS (e.g., para modificar ACLs, crear cuentas de máquina, configurar RBCD). El relay LDAP es extremadamente poderoso porque permite realizar cambios directos en el directorio.
relay-informer ldap DC01
relay-informer ldap DC01.corp.local
relay-informer ldap all| Argumento | Requerido | Descripción |
|---|---|---|
host | Sí | Hostname del DC, o all para verificar todos los DCs del dominio |
Interpretación de resultados:
- LDAP Signing: Not Required → Vulnerable a relay LDAP sin TLS
- LDAPS Channel Binding: Not Required → Vulnerable a relay LDAPS
- Both Required → No vulnerable a relay LDAP/LDAPS
Ataques posibles cuando LDAP signing no es requerido:
- Crear una cuenta de máquina y configurar RBCD para escalar privilegios
- Agregar ACLs de DCSync a un usuario controlado
- Agregar miembros a grupos privilegiados
- Shadow Credentials vía escritura de msDS-KeyCredentialLink
relay-informer http
Verifica la configuración de EPA (Extended Protection for Authentication) y channel binding en servicios HTTP/HTTPS.
Cuándo usarlo: Antes de intentar relay a endpoints HTTP como:
- AD CS (Certificate Services) enrollment endpoint
- Exchange Web Services (EWS)
- ADFS endpoints
- SharePoint
relay-informer http https://adcs.corp.local/certsrv/
relay-informer http https://exchange.corp.local/ews/
relay-informer http http://intranet.corp.local| Argumento | Requerido | Descripción |
|---|---|---|
url | Sí | URL completa del servicio HTTP/HTTPS |
Interpretación de resultados:
- EPA: Not Enforced → Vulnerable a relay HTTP/HTTPS
- EPA: Enforced → No vulnerable
Caso común: El relay HTTP a AD CS (ESC8) es una de las cadenas de ataque más efectivas. Coerce autenticación de un DC → relay a ADCS HTTP enrollment → obtener certificado del DC → DCSync.
relay-informer mssql
Verifica la configuración de signing y channel binding en un servidor Microsoft SQL Server.
Cuándo usarlo: Antes de intentar relay a MSSQL para ejecutar consultas SQL con los privilegios de la víctima.
relay-informer mssql DB01
relay-informer mssql DB01.corp.local 1433 master
relay-informer mssql 192.168.1.50 1434 tempdb| Argumento | Requerido | Descripción |
|---|---|---|
host | Sí | Hostname o IP del servidor SQL |
port | No | Puerto (por defecto: 1433) |
database | No | Base de datos (por defecto: master) |
Flujo de trabajo de evaluación
# 1. Evaluar todos los protocolos en los DCs
relay-informer smb DC01
relay-informer ldap all
relay-informer http https://adcs.corp.local/certsrv/
# 2. Evaluar servidores miembros
relay-informer smb FILESERVER01
relay-informer smb SQLSERVER01
relay-informer mssql SQLSERVER01
# 3. Según resultados, planificar el ataque:
# - SMB sin signing → relay para ejecución de comandos
# - LDAP sin signing → relay para manipulación de AD
# - HTTP sin EPA → relay a ADCS para certificados
# - MSSQL sin signing → relay para ejecución SQLRelación con otros módulos
| Si es vulnerable… | Puedes usar… |
|---|---|
| SMB signing off | jump psexec (LateralMovement-BOF) |
| LDAP signing off | ldap add-rbcd, ldap add-dcsync (LDAP-BOF) |
| HTTP EPA off | certi request via relay (ADCS-BOF) |
| MSSQL signing off | mssql xpcmd via relay (SQL-BOF) |