6.6 זיוף טיקטים הרצאה
תקיפות Silver, Golden, & Diamond Ticket: זיוף טיקטים לצורך השגת הרשאות גבוהות¶
התקפות Silver, Golden, ו-Diamond Ticket הן טכניקות מתקדמות במתקפות על מערכות Active Directory המאפשרות לתוקף להשיג גישה למערכות קריטיות ולקבל הרשאות גבוהות בצורה חמקנית. טכניקות אלו מבוססות על זיוף כרטיסים של Kerberos המאפשרים לתוקף להשתלט על חשבונות עם הרשאות ניהוליות, לבצע Privilege Escalation ולהתפשט בתוך הרשת בצורה יעילה ביותר.
כדי להבין את התקפות אלו, נתחיל בהסבר על מבנה ה-Kerberos וכיצד ניתן לזייף את הכרטיסים כדי לקבל גישה למערכות מוגבלות.
מהו Kerberos ומהם כרטיסי TGT ו-TGS?¶
בגדול Kerberos הוא פרוטוקול אימות המשמש במערכות Windows ובמיוחד ב- Active Directory. הפרוטוקול נועד לוודא את זהות המשתמשים והמערכות בסביבה מאובטחת. הפרוטוקול נועד כתחליף לNTLM- תקראו עוד על הפרוטוקול בקורס רשתות.
-
הTGT (Ticket Granting Ticket): כרטיס זה משמש כאישור למערכת KDC (Key Distribution Center) כדי לקבל כרטיסים לשירותים מסוימים. כל משתמש מקבל TGT לאחר שהוא מתחבר ל-AD, וניתן להשתמש בכרטיס זה כדי לקבל כרטיסי TGS (Service Tickets).
-
הTGS (Ticket Granting Service): זהו כרטיס שמונפק לשירותים שונים (כגון שרתים) כאשר יש צורך לבצע פעולות שונות או לגשת לשירותים.
במצב רגיל, כל כרטיס של Kerberos מוצפן במפתח סודי הידוע רק ל-KDC ולמשתמש עצמו. כך, מערכת ה-Kerberos מבטיחה שהמשתמשים לא יכולים ליצור כרטיסים מזויפים. אך כשיש לתוקף גישה ל-KDC (כגון דליפת המפתח הסודי), הוא יכול לזייף כרטיסים אלו.
מהן התקפות Silver, Golden ו-Diamond Ticket?¶
ההתקפות הללו הן בעצם זיופים של כרטיסי Kerberos (TGT ו-TGS) שמאפשרים לתוקף להשיג הרשאות גבוהות במערכות. כל אחת מההתקפות מתבצעת בצורה שונה, אך המטרה הסופית היא השגת גישה למערכות קריטיות ולביצוע פעולות בעלות הרשאות ניהוליות.
Golden Ticket¶
התקפת ה-Golden Ticket היא התקפה שבה התוקף זוכה למפתח סודי של ה-KDC (הטוב ביותר למטרות תקיפה הוא ה- KRBTGT Account) ומזייף TGT שיאפשר לו לקבל גישה לכל השירותים והמשאבים בתוך הדומיין. עם Golden Ticket התוקף יכול לגשת לכל מחשב, כל משתמש וכל שירות ב-Active Directory.
-
חשבון KRBTGT Account: זהו חשבון המערכת המשמש לאימות כרטיסי Kerberos. ברגע שהמפתח הסודי של חשבון זה נגנב, התוקף יכול ליצור Golden Ticket לכל שירות או מחשב ברשת.
-
זיוף TGT: התוקף יוצר כרטיס TGT חדש שמכיל את המידע של ה-KRBTGT, וכולל בתוכו את המידע של החשבון שאליו התוקף רוצה לגשת.
Silver Ticket¶
התקפת ה-Silver Ticket מאפשרת לתוקף להשיג גישה לשירות ספציפי (למשל, שרת SQL או Exchange) על ידי זיוף כרטיס TGS. במקום זיוף TGT, התוקף מזייף את הכרטיס שיאפשר לו לגשת לשירות מסוים ברשת.
- שימוש ב-Silver Ticket: התוקף לא צריך לגשת ל-KDC (כיוון שהוא לא יוצר TGT), אלא רק מייצר כרטיס TGS עבור שירות ספציפי, המאפשר לו לקבל גישה מיידית לשירות זה.
Diamond Ticket¶
התקפת ה-Diamond Ticket היא גרסה מתקדמת של Golden Ticket, הכוללת את השגת המפתח הסודי של ה-KDC (המשתמש krbtgt) וכן את המידע של Domain Admins. עם Diamond Ticket, התוקף יכול לקבל גישה לכל ה-Domain Controllers ולהיות בעל הרשאות גבוהות מאוד ב-Active Directory.
ביצוע התקפות Silver, Golden ו-Diamond Ticket¶
שלב 1: גניבת המפתח הסודי (KRBTGT)¶
כדי לבצע את ההתקפה, השלב הראשון הוא גניבת המפתח הסודי של ה-KDC. המפתח הזה משמש לחתימה על כל כרטיסי Kerberos, וגניבתו מאפשרת לתוקף ליצור כרטיסים מזויפים.
אפשר לגנוב את המפתח הזה על ידי:
-
תקיפת DCSync Attack – התקפה על ה-Domain Controller לקבלת מידע קריפטוגרפי של KRBTGT.
-
תקיפת Dumping NTDS.dit – שליפת המידע מה-NTDS.dit המהווה מאגר של כל הנתונים הקשורים למערכת ה-Active Directory.
נלמד בהמשך הקורס כיצד ניתן לבצע את ההתקפות האלו על הdomain controller
שלב 2: יצירת ה-Golden Ticket¶
לאחר שהשגנו את המפתח הסודי של KRBTGT, ניתן להשתמש בו כדי ליצור Golden Ticket בעזרת כלים כמו Mimikatz או Impacket.
דוגמה ליצירת Golden Ticket עם Mimikatz:¶
mimikatz.exe "kerberos::ptt /user:Administrator /rc4:<KRBTGT_HASH> /domain:domain.local /sid:S-1-5-21-<SID> /ticket:<BASE64_ENCODED_TICKET>"
בפקודה זו:
-
/user:Administrator: כותבים את המשתמש שברצוננו לזייף עבורו כרטיס.
-
/rc4:
: מפתח ה-KRBTGT. -
/sid:S-1-5-21-: מזהה ה-SID של הדומיין.
-
/ticket:
: הכרטיס המוצפן.
שלב 3: יצירת Silver Ticket¶
השלב הבא הוא יצירת Silver Ticket אם המטרה היא לגשת לשירות מסוים.
דוגמה ליצירת Silver Ticket עם Mimikatz:¶
mimikatz.exe "kerberos::ptt /user:Administrator /rc4:<KRBTGT_HASH> /domain:domain.local /sid:S-1-5-21-<SID> /target:sqlserver.domain.local /service:krbtgt /ticket:<BASE64_ENCODED_TICKET>"
בפקודה זו, המטרה היא להתחבר לשירות SQL Server ספציפי, באמצעות יצירת Silver Ticket.
שלב 4: Diamond Ticket (Advanced)¶
התקפת Diamond Ticket מבוססת על זיוף TGT מתקדם במיוחד, הכולל את המידע של Domain Admins.
בקצרה, אם אתם יושבים על הDC- אז תוכלו לשלוף את הntlm hash של משתמש krbtgt ובכך שתהיה לכם גישה תמידית ליצור golden ticket-ים.
השלבים הסופיים של ההתקפה¶
לאחר שהשגנו את ה-Golden Ticket, Silver Ticket או Diamond Ticket, התוקף יכול להתחיל לנוע ברחבי הרשת, להשתלט על מערכות קריטיות, לבצע Privilege Escalation ולהשיג גישה לכל השרתים והשירותים במערכת.
כלים נוספים שניתן להשתמש בהם בהתקפות Kerberos¶
-
Impacket - לא רק שמספק את הכלים ליצירת Golden ו-Silver Ticket, אלא גם מאפשר גישה לחשבונות שונים ב-AD.
-
Mimikatz - נחשב לכלי החזק ביותר לניצול טכניקות כמו Pass-the-Ticket ו-Kerberoasting.
-
Empire - מערכת אוטומטית המאפשרת לתוקף לבצע את כל ההתקפות על מערכות Windows כולל Golden Ticket ו-Silver Ticket.