Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/dec0ne/davrelayup
Escalade de PrivilègesExploitationMouvement LatéralAuthentificationRed Teaming
GitHubdec0ne/davrelayup

DavRelayUp

Voir le dépôt
57576il y a 3 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →

À propos

Automatise l'élévation de privilèges locaux vers SYSTEM sur des stations de travail Windows jointes à un domaine en relayant l'authentification NTLM de WebDAV vers LDAP, en exploitant la délégation contrainte basée sur les ressources (RBCD) sans exiger l'application de la signature LDAP.

Partager

DavRelayUp

Un port rapide et sale de KrbRelayUp avec des modifications pour permettre le relai NTLM de webdav vers LDAP afin de simplifier l'exploitation de la primitive d'attaque suivante :

  1. (Optionnel) Création d'un nouveau compte machine (New-MachineAccount)
  2. Forcer le démarrage du service WebClient
  3. Démarrer le serveur de relai webdav (GoRelayServer – une DLL Golang intégrée dans DavRelayUp via Costura.Fody)
  4. Coercition de l'authentification du compte machine local (SharpSystemTriggers)
  5. Relai NTLM vers LDAP
  6. Ajout des privilèges RBCD et obtention d'un ST privilégié pour la machine locale (Rubeus)
  7. Utilisation dudit ST pour s'authentifier auprès du Service Manager local et créer un nouveau service en tant que NT/SYSTEM. (SCMUACBypass)

Il s'agit essentiellement d'une élévation de privilèges locale universelle sans correctif sur les postes de travail Windows joints à un domaine où la signature LDAP n'est pas appliquée (paramètres par défaut).

Usage

root@kitploit:~
DavRelayUp - Relaying you to SYSTEM, again...

Usage: DavRelayUp.exe [-c] [-cn COMPUTERNAME] [-cp PASSWORD | -ch NTHASH]

RBCD Options:
    -c   (--CreateNewComputerAccount) Create new computer account for RBCD. Will use the current authenticated user.
    -cn  (--ComputerName)             Name of attacker owned computer account for RBCD. (default=DAVRELAYUP$)
    -cp  (--ComputerPassword)         Password of computer account for RBCD. (default=RANDOM [if -c is enabled])
    -ch  (--ComputerPasswordHash)     Password NT hash of computer account for RBCD. (either -cp or -ch must be specified)
    -i   (--Impersonate)              User to impersonate. Should be a local administrator in the target computer. (default=Administrator)

KrbSCM Options:
    -s   (--ServiceName)              Name of the service to be created. (default=KrbSCM)
    -sc  (--ServiceCommand)           Service command [binPath]. (default = spawn cmd.exe as SYSTEM)

General Options:
    -p  (--Port)                     Port for WebDAV Server (default=55555)
    -d  (--Domain)                   FQDN of domain. (Optional)
    -dc (--DomainController)         FQDN of domain controller. (Optional)
    -ssl                             Use LDAP over SSL. (Optional)
    -n                               Use CreateNetOnly (needs to be on disk) instead of PTT when importing ST (Optional)
    -v  (--Verbose)                  Show verbose output. (Optional)
    -h  (--Help)                     Show help

Problèmes connus

Si DavRelayUp reste bloqué à l'une de ces étapes – essayez d'utiliser un port différent en précisant le paramètre [-p].

root@kitploit:~
DavRelayUp - Relaying you to SYSTEM, again...

[+] WebClient Service started successfully
[+] Starting Relay Server on Port 55555
[+] Coercing System Authentication
root@kitploit:~
DavRelayUp - Relaying you to SYSTEM, again...

[+] 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

Exemples

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

exemple

Construction

  1. Construire GoRelayServer (déjà construit et prêt dans ce dépôt, mais si vous voulez le faire vous‑même)
    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
    
    Ceci construira la DLL GoRelayServer et l'enregistrera dans "DavRelayUp\DavRelayUp\Costura64\GoRelayServer.dll" – c'est le dossier depuis lequel Costura.Fody l'intégrera dans l'exécutable final DavRelayUp.exe.
  2. Ouvrir KrbRelayUp.sln dans Visual Studio 2019
  3. Assurez-vous que la configuration de la solution est définie sur Release et appuyez sur Générer (CTRL+MAJ+B)

À FAIRE

  • Ajouter l'attaque ShadowCred comme méthode RELAIS
  • Ajouter le support U2U pour permettre l'attaque sans nécessiter de compte machine

Atténuation & Détection

  • Appliquer la signature LDAP et la liaison de canal LDAP pour atténuer le relai de l'authentification du compte machine vers LDAP. Cela peut être configuré via la stratégie de groupe « Configuration requise pour la signature du serveur LDAP du contrôleur de domaine ». (Merci à Will Dormann pour son tweet à ce sujet)
  • Rendre les conditions requises de l'attaque plus difficiles à obtenir en définissant l'attribut MS-DS-Machine-Account-Quota dans l'AD à 0, supprimant ainsi la capacité de tout utilisateur d'ajouter un nouveau compte machine au domaine. Il s'agit d'un paramètre par défaut dangereux dans l'AD – assurez-vous de le modifier.
  • Définir le drapeau « Le compte est sensible et ne peut pas être délégué » sur tous les comptes administrateur (ou les placer dans les utilisateurs protégés) ferait en sorte qu'il n'y ait aucun compte avec les privilèges requis pouvant être délégué pour terminer le chemin d'attaque. (Merci à Christoph Falta pour ce tweet)
  • Ressources pour des règles possibles de surveillance et de détection :
    1. https://github.com/tsale/Sigma_rules/blob/main/windows_exploitation/KrbRelayUp.yml (@Kostastsale)
    2. https://twitter.com/SBousseaden/status/1518976397364056071 (@SBousseaden). Principalement la règle concernant l'authentification au Service Manager via Kerberos depuis 127.0.0.1, excellent travail !.
    3. https://www.linkedin.com/posts/john-dwyer-xforce_threathunting-threatdetection-blueteam-activity-6924739962131140608-py45/ (John Dwyer @TactiKoolSec)

Remerciements

  • James Forshaw pour avoir compris comment utiliser les tickets de service Kerberos pour l'authentification LOCALE au Service Manager, ce qui était la pièce manquante du puzzle pour rendre cette primitive d'attaque uniquement locale (avant cela, nous devions exporter le ST vers une machine distante pour l'utiliser et obtenir un accès privilégié à notre machine cible).
  • Kevin Robertson pour sa fonctionnalité New-MachineAccount utilisée dans ce projet.
  • Cube0x0 pour sa fonctionnalité SharpSystemTriggers (plus précisément SharpEfsTrigger) utilisée dans ce projet.
  • Elad Shamir pour ses recherches sur RBCD – Wagging the Dog
  • Will Schroeder et tous ceux qui ont contribué à Rubeus que nous connaissons et aimons tous. En gros, toutes les fonctionnalités RBCD-S4U proviennent de là.
  • Orange-Cyberdefense pour leur travail sur GOAD, le laboratoire de recherche Active Directory que j'utilise et que vous pouvez voir dans la vidéo de démonstration et les images.
  • Shantanu Khandelwal pour son article de blog sympa sur Red Team: How to embed Golang tools in C#
  • GoRelayServer a été construit sur la base du travail effectué sur go-ldap que j'ai modifié pour permettre le relai NTLM webdav-to-ldap. Merci également à Mariusz Banach pour SharpWebServer que j'ai utilisé pour apprendre comment fonctionne l'authentification NTLM webdav et l'ai implémenté comme écouteur serveur dans GoRelayServer.
Télécharger l’outil