Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
DavRelayUp — Automatiza la escalación de privilegios local a SYSTEM en estaciones de trabajo Windows unidas a un dominio mediante la retransmisión de autenticación NTLM de WebDAV a LDAP, aprovechando la delegación restringida basada en recursos (RBCD) sin requerir la aplicación de la firma LDAP. | Kitploit
Herramientas/GitHubGitHub/dec0ne/davrelayup
Escalada de PrivilegiosExplotaciónMovimiento LateralAutenticaciónRed Teaming
GitHubdec0ne/davrelayup

DavRelayUp

Ver Repositorio
57576hace 3 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →

Acerca de

Automatiza la escalación de privilegios local a SYSTEM en estaciones de trabajo Windows unidas a un dominio mediante la retransmisión de autenticación NTLM de WebDAV a LDAP, aprovechando la delegación restringida basada en recursos (RBCD) sin requerir la aplicación de la firma LDAP.

Compartir

DavRelayUp

Un port rápido y sucio de KrbRelayUp con modificaciones para permitir el relay NTLM desde webdav a LDAP con el fin de simplificar el abuso de la siguiente primitiva de ataque:

  1. (Opcional) Creación de una nueva cuenta de máquina (New-MachineAccount)
  2. Forzar el inicio del servicio WebClient
  3. Iniciar el servidor de relay webdav (GoRelayServer - una DLL de golang incrustada en DavRelayUp usando Costura.Fody)
  4. Coerción de autenticación de la cuenta de máquina local (SharpSystemTriggers)
  5. Relay NTLM a LDAP
  6. Agregar privilegios RBCD y obtener un ST privilegiado para la máquina local (Rubeus)
  7. Usar dicho ST para autenticarse en el Administrador de Servicios local y crear un nuevo servicio como NT/SYSTEM. (SCMUACBypass)

Esto es esencialmente una escalada de privilegios local universal sin parche en estaciones de trabajo Windows unidas a un dominio donde la firma LDAP no está habilitada (la configuración predeterminada).

Uso

root@kitploit:~
DavRelayUp - Te llevamos a SYSTEM, de nuevo...

Uso: DavRelayUp.exe [-c] [-cn NOMBREMAQUINA] [-cp CONTRASEÑA | -ch HASHNT]

Opciones de RBCD:
    -c   (--CreateNewComputerAccount) Crear una nueva cuenta de máquina para RBCD. Usará el usuario autenticado actual.
    -cn  (--ComputerName)             Nombre de la cuenta de máquina del atacante para RBCD. (por defecto=DAVRELAYUP$)
    -cp  (--ComputerPassword)         Contraseña de la cuenta de máquina para RBCD. (por defecto=ALEATORIA [si -c está activado])
    -ch  (--ComputerPasswordHash)     Hash NT de la contraseña de la cuenta de máquina para RBCD. (debe especificarse -cp o -ch)
    -i   (--Impersonate)              Usuario a suplantar. Debe ser un administrador local en la máquina objetivo. (por defecto=Administrador)

Opciones de KrbSCM:
    -s   (--ServiceName)              Nombre del servicio a crear. (por defecto=KrbSCM)
    -sc  (--ServiceCommand)           Comando del servicio [binPath]. (por defecto = ejecutar cmd.exe como SYSTEM)

Opciones Generales:
    -p  (--Port)                     Puerto para el servidor WebDAV (por defecto=55555)
    -d  (--Domain)                   FQDN del dominio. (Opcional)
    -dc (--DomainController)         FQDN del controlador de dominio. (Opcional)
    -ssl                             Usar LDAP sobre SSL. (Opcional)
    -n                               Usar CreateNetOnly (debe estar en disco) en lugar de PTT al importar ST (Opcional)
    -v  (--Verbose)                  Mostrar salida detallada. (Opcional)
    -h  (--Help)                     Mostrar ayuda

Problemas conocidos

Si DavRelayUp se queda atascado en una de estas etapas, prueba a usar un puerto diferente especificando el flag [-p]

root@kitploit:~
DavRelayUp - Te llevamos a SYSTEM, de nuevo...

[+] WebClient Service started successfully
[+] Starting Relay Server on Port 55555
[+] Coercing System Authentication
root@kitploit:~
DavRelayUp - Te llevamos a SYSTEM, de nuevo...

[+] WebClient Service started successfully
[+] Starting Relay Server on Port 55555
[+] Coercing System Authentication
[+] WebDAV Request: No Authorization header
[+] WebDAV Response: Sending 401 Unauthorized with "WWW-Authenticate: NTLM" header

Ejemplos

https://github.com/Dec0ne/DavRelayUp/assets/54464773/4e791e8b-783c-48d3-b46b-8b22e2661ea1

ejemplo

Compilación

  1. Compilar GoRelayServer (ya compilado y listo en este repositorio, pero si quieres hacerlo tú mismo)
    root@kitploit:~
    PS C:\Tools\DavRelayUp> cd GoRelayServer
    PS C:\Tools\DavRelayUp\GoRelayServer> go build --buildmode=c-shared -ldflags="-s -w"  -o "../DavRelayUp/Costura64/GoRelayServer.dll" main.go
    
    Esto compilará la DLL GoRelayServer y la guardará en "DavRelayUp\DavRelayUp\Costura64\GoRelayServer.dll" -> Esta es la carpeta desde la que Costura.Fody la incrustará en el ejecutable final DavRelayUp.exe.
  2. Abrir KrbRelayUp.sln en Visual Studio 2019
  3. Asegurarse de que la configuración de la solución esté en Release y compilar (CTRL+SHIFT+B)

PENDIENTE

  • Agregar ataque ShadowCred como método RELAY
  • Agregar soporte U2U para permitir el ataque sin necesidad de una cuenta de máquina

Mitigación y Detección

  • Habilitar la firma LDAP y el enlace de canal LDAP para mitigar el relay de la autenticación de la cuenta de máquina a LDAP. Esto se puede configurar mediante el GPO "Requisitos de firma del servidor LDAP del controlador de dominio". (Gracias a Will Dormann por su tweet sobre este tema)
  • Dificultar los requisitos del ataque estableciendo el atributo MS-DS-Machine-Account-Quota en AD a 0, eliminando así la capacidad de cualquier usuario de agregar una nueva cuenta de máquina al dominio. Esta es una configuración predeterminada peligrosa en AD; asegúrate de cambiarla.
  • Establecer el flag "La cuenta es sensible y no se puede delegar" en todas las cuentas de administrador (o ponerlas en usuarios protegidos) haría que no exista ninguna cuenta con los privilegios requeridos que pueda ser delegada para completar la ruta de ataque. (Gracias a Christoph Falta por este tweet)
  • Recursos para posibles reglas de monitoreo y detección:
    1. https://github.com/tsale/Sigma_rules/blob/main/windows_exploitation/KrbRelayUp.yml (@Kostastsale)
    2. https://twitter.com/SBousseaden/status/1518976397364056071 (@SBousseaden). Principalmente la regla sobre autenticación al Administrador de Servicios a través de Kerberos desde 127.0.0.1, ¡gran trabajo!.
    3. https://www.linkedin.com/posts/john-dwyer-xforce_threathunting-threatdetection-blueteam-activity-6924739962131140608-py45/ (John Dwyer @TactiKoolSec)

Agradecimientos

  • James Forshaw por descubrir cómo usar tickets de servicio Kerberos para autenticación LOCAL al Administrador de Servicios, que fue la pieza faltante del rompecabezas para hacer que esta primitiva de ataque fuera solo local (antes de eso, teníamos que exportar el ST a una máquina remota para usarlo y obtener acceso privilegiado a nuestra máquina objetivo).
  • Kevin Robertson por su funcionalidad New-MachineAccount que se utilizó en este proyecto.
  • Cube0x0 por su funcionalidad SharpSystemTriggers (especialmente SharpEfsTrigger) que se utilizó en este proyecto.
  • Elad Shamir por su investigación sobre RBCD - Wagging the Dog
  • Will Schroeder y todos los que contribuyeron a Rubeus, que todos conocemos y amamos. Básicamente, toda la funcionalidad de RBCD-S4U fue tomada de allí.
  • Orange-Cyberdefense por su trabajo en GOAD, el laboratorio de investigación de Active Directory que estoy usando y que puedes ver en el video de demostración y las imágenes.
  • Shantanu Khandelwal por su excelente publicación en el blog sobre Red Team: Cómo incrustar herramientas Golang en C#
  • GoRelayServer fue construido sobre el trabajo realizado en go-ldap que modifiqué para permitir el relay NTLM de webdav a LDAP. También gracias a Mariusz Banach por SharpWebServer que usé para aprender cómo funciona la autenticación NTLM de webdav y lo implementé como el servidor listener en GoRelayServer.
Descargar herramienta