Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
KRBUACBypass — Missbraucht Kerberos-Tickets, um die Windows UAC zu umgehen und SYSTEM-Berechtigungen zu erlangen, indem eine gefälschte MachineID in Service-Tickets injiziert wird, unter Verwendung des tgtdeleg-Tricks und SCM-Zugriffs. | Kitploit
Tools/GitHubGitHub/wh0amitz/krbuacbypass
Privilege EscalationExploitationPenetrationstestsAuthentifizierungRed Teaming
GitHubwh0amitz/krbuacbypass

KRBUACBypass

Missbraucht Kerberos-Tickets, um die Windows UAC zu umgehen und SYSTEM-Berechtigungen zu erlangen, indem eine gefälschte MachineID in Service-Tickets injiziert wird, unter Verwendung des tgtdeleg-Tricks und SCM-Zugriffs.

Repository anzeigen
51364vor 3 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Hintergrund

Dieser POC wurde inspiriert von James Forshaw (@tiraniddo), der auf der BlackHat USA 2022 einen Vortrag mit dem Titel „Taking Kerberos To The Next Level“ hielt und eine Demo zum Missbrauch von Kerberos-Tickets zur Umgehung der UAC zeigte. Durch das Hinzufügen eines KERB-AD-RESTRICTION-ENTRY zum Dienstticket, aber mit einer gefälschten MachineID, können wir die UAC leicht umgehen und SYSTEM-Privilegien erlangen, indem wir auf den SCM zugreifen, um einen Systemdienst zu erstellen. James Forshaw erklärte die dahinterstehende Logik in einem Blogbeitrag mit dem Titel „Bypassing UAC in the most Complex Way Possible!“, der mich sehr interessierte. Obwohl er den vollständigen Exploit-Code nicht zur Verfügung stellte, habe ich einen POC basierend auf Rubeus erstellt. Als C#-Toolset für die direkte Kerberos-Interaktion und den Missbrauch von Tickets bietet Rubeus eine einfache Schnittstelle, mit der wir problemlos Kerberos-Anfragen initiieren und Kerberos-Tickets manipulieren können.

Weitere Artikel zu KRBUACBypass finden Sie in meinem Blog „Revisiting a UAC Bypass By Abusing Kerberos Tickets“, einschließlich des Hintergrundprinzips und der Implementierung. Wie im Artikel erwähnt, wurde dieser Artikel von @tiraniddos „Taking Kerberos To The Next Level“ inspiriert (ohne seine Offenlegung hätte ich es nicht gemacht) und ich habe ihn lediglich als Tool implementiert, bevor ich das College abschloss.

Tgtdeleg Trick

Wir können kein TGT manuell generieren, da wir keine aktuellen Anmeldeinformationen des Benutzers haben und keinen Zugriff darauf haben. Allerdings hat Benjamin Delpy (@gentilkiwi) in seinem Kekeo einen Trick (tgtdeleg) hinzugefügt, der es erlaubt, unconstrained Delegation zu missbrauchen, um ein lokales TGT mit einem Sitzungsschlüssel zu erhalten.

Tgtdeleg missbraucht die Kerberos GSS-API, um verfügbare TGTs für den aktuellen Benutzer zu erhalten, ohne erhöhte Privilegien auf dem Host zu erlangen. Diese Methode verwendet die AcquireCredentialsHandle-Funktion, um das Kerberos-Sicherheitsanmeldeinformationshandle für den aktuellen Benutzer zu erhalten, und ruft die InitializeSecurityContext-Funktion für HOST/DC.domain.com mit dem ISC_REQ_DELEGATE-Flag und dem Ziel-SPN auf, um den Pseudo-Delegationskontext vorzubereiten, der an den Domänencontroller gesendet wird. Dies führt dazu, dass die KRB_AP-REQ in der GSS-API-Ausgabe die KRB_CRED im Authenticator-Prüfsumme enthält. Der Sitzungsschlüssel des Diensttickets wird dann aus dem lokalen Kerberos-Cache extrahiert und verwendet, um die KRB_CRED im Authenticator zu entschlüsseln, um ein verwendbares TGT zu erhalten. Das Rubeus-Toolset enthält ebenfalls diese Technik. Einzelheiten finden Sie unter „Rubeus – Now With More Kekeo“.

Mit diesem TGT können wir unser eigenes Dienstticket generieren, und der mögliche Ablauf ist wie folgt:

  1. Verwenden Sie den Tgtdeleg-Trick, um das TGT des Benutzers zu erhalten.
  2. Verwenden Sie das TGT, um den KDC aufzufordern, ein neues Dienstticket für den lokalen Computer zu generieren. Fügen Sie einen KERB-AD-RESTRICTION-ENTRY hinzu, aber füllen Sie eine gefälschte MachineID ein.
  3. Übermitteln Sie das Dienstticket in den Cache.

Krbscm

Sobald Sie ein Dienstticket haben, können Sie die Kerberos-Authentifizierung verwenden, um auf Named Pipes oder TCP des Service Control Managers (SCM) über HOST/HOSTNAME oder RPC/HOSTNAME SPN zuzugreifen. Beachten Sie, dass die Win32-API des SCM immer die Negotiate-Authentifizierung verwendet. James Forshaw hat einen einfachen POC erstellt: SCMUACBypass.cpp, bei dem durch die beiden APIs HOOK AcquireCredentialsHandle und InitializeSecurityContextW der Name des vom SCM aufgerufenen Authentifizierungspakets (pszPack age) in Kerberos geändert wird, damit der SCM bei der lokalen Authentifizierung Kerberos verwenden kann.

Für weitere Details lesen Sie bitte:

  • Für EN-US: https://whoamianony.top/posts/revisiting-a-uac-bypass-by-abusing-kerberos-tickets/
  • Für ZH-CN: https://paper.seebug.org/3003/

Sehen wir es in Aktion

Werfen wir nun einen Blick auf die Ausführung, wie in der Abbildung unten gezeigt. Fordern Sie zuerst ein Ticket für den HOST-Dienst des aktuellen Servers über die asktgs-Funktion an, und erstellen Sie dann einen Systemdienst über krbscm, um das SYSTEM-Privileg zu erlangen.

root@kitploit:~
KRBUACBypass.exe asktgs
KRBUACBypass.exe krbscm

Animation

Tool herunterladen