PracticU

התקפת Pass-The-Ticket
חלק 1

בלי כתוביותעם כתוביות
PracticU › קורס פריצה ומבדקי חדירה לתשתית ארגונית - בדיקות חוסן מתקדמות ל-Active Directory - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › התקפת Pass-The-Ticket חלק 1
מילון מושגים:
TGT - כרטיס שמנפיק שרת האימות ב-Kerberos, שבעזרתו המשתמש מבקש גישה לשירותים בלי להזדהות שוב בכל פעם.
SSMS - הכלי הגרפי של מיקרוסופט לניהול SQL Server ולהרצת שאילתות (SQL Server Management Studio).
NTLM - פרוטוקול אימות ותיק של מיקרוסופט המבוסס על ערכי האש של סיסמאות, שקדם ל-Kerberos.
CMD - שורת הפקודה הקלאסית של Windows (Command Prompt), להרצת פקודות ותוכניות בממשק טקסטואלי.
פישינג - ניסיון הונאה שבו תוקף מתחזה לגורם מהימן כדי לגרום לקורבן למסור פרטים רגישים כמו סיסמאות.
GitHub - שירות ענן לאחסון מאגרי קוד מבוססי Git, המאפשר שיתוף פעולה, מעקב גרסאות וניהול פרויקטים.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
LDAP - פרוטוקול לגישה ולשאילתה של שירותי מדריך כמו Active Directory, לאיתור וניהול משתמשים ומשאבים.

התקפת Pass-The-Ticket
חלק 1
בשיעור זה אנו מתחילים את התקפת Pass-The-Ticket, שבה נגנוב את ה-TGT, כרטיס ההזדהות של קרברוס, של משתמש, בלי לדעת את הסיסמה שלו ובלי לשבור את ה-hash שלה, ובלי הרשאות אדמיניסטרטור מקומי על התחנה.
נושאי הסיכום המוצגים בשיעור:
1. הסצנה שלנו כתוקפים: אנו מגולמים כהאקר שפרץ למשתמש פשוט בתחנה, אך אין לו סיסמה, אין hash ואין הרשאות אדמין. כשהוא מנסה להתחבר לאותו שיתוף קבצים שהמשתמש עובד בו, השרת דורש שם משתמש וסיסמה שאין לנו, וכך גם בניסיון להתחבר עם SSMS למסד הנתונים שהמשתמש ניגש אליו ב-Windows Authentication, ההתחברות נכשלת.
2. הבדל בין המשתמש לתוקף: המשתמש האמיתי מצליח להיכנס לכל השירותים האלה בלי להקליד סיסמה, כיוון שההזדהות שלו מתבצעת באופן אוטומטי על ידי קרברוס או NTLM. אנו, שמחזיקים ב-CMD שלו, נמצאים בהקשר של משתמש פשוט עם רמת הרשאה Medium, ולא יכולים להריץ דברים כאדמיניסטרטור.
3. ההחדרה: שלחנו למשתמש מייל פישינג, הוא פתח אותו ואנו משוחחים עם תחנתו דרך CMD בהרשאות משתמש פשוט בלבד, והכיוון הוא לגנוב את ה-TGT שלו.
4. הורדת Mimikatz: מורידים את Mimikatz מה-GitHub של המפתח שלו, את הגרסה האחרונה המקומפלת. האנטי-וירוס בהדגמה הושתק, ומוסבר שבמציאות חברות ה-pentest לוקחות את הכלים מ-GitHub ומשנות בהם פרטים עד שהאנטי-וירוס אינו תופס אותם, והתחמקות מאנטי-וירוס היא נושא בפני עצמו.
5. צפייה בטיקטים: בתוך Mimikatz מריצים פקודת הצגת הטיקטים ורואים את כל הטיקטים של היוזר, את ה-TGT שלו, ואת טיקטי השירות שלו לשיתופים ול-SQL, וכן טיקט הקשור ל-LDAP, שהוא תשאול של Active Directory. לכל שירות שהמשתמש ניגש אליו יש טיקט משלו.
6. למה דווקא ה-TGT: טיקט של שירות ספציפי מועיל רק לאותו שירוד, למשל רק ל-SQL, ואילו ה-TGT הוא כרטיס האב שאיתו מקבלים את כל הטיקטים האחרים, ולכן הוא המטרה. שימו לב שה-TGT שלו מסומן כטיקט ראשוני.
7. המכשול, ה-Session Key: מנסים לחלץ את ה-TGT ומופתעים שהפקודה נכשלת בשליפת ה-Session Key. זהו המפתח הסודי שאיתו התחנה מצפינה מידע אל ה-DC, והוא משמש במקום הסיסמה בבקשות לקבלת טיקטי שירות. ה-Session Key מוכיח שהבקשה מגיעה מהתחנה המקורית ולא מהאזנה על הכבל, כיוון שהוא הגיע אליה בהודעות קודמות מוצפן עם ה-hash שלה, ובאמצעותו מוצפנים שם המשתמש והשעה. Windows מציג כרגע אפסים במקום המפתח, ומרמז שקיים ערך Registry שאם ישונה המפתח ייחשף, אך שינוי Registry דורש אדמיניסטרטור על התחנה ואף דורש הפעלה מחדש שלה, דבר שאיננו רוצים לעשות. את הפתרון נגלה בשיעור הבא.
סיכמנו את תרחיש ההתקפה של Pass-The-Ticket מתוך תחנה שנפרצה בהרשאות משתמש פשוט, למדנו למה ה-TGT עדיף על טיקטי שירות בודדים, ונתקלנו במכשול של ה-Session Key ש-Windows מסתיר. בשיעור הבא נעסוק בנושא התקפת Pass-The-Ticket
חלק 2 - קבלת TGT עם Kekeo. זה הכל, תודה רבה.
בשיעור הבא נעסוק בנושא התקפת Pass-The-Ticket
חלק 2 - קבלת TGT עם Kekeo.
SR12949HE

פרקי ההרצאה: התקפת Pass-The-Ticket חלק 1

  1. 00:00

    המטרה: גניבת ה-TGT

  2. 01:14

    העבודה הרגילה של היוזר

  3. 02:10

    מגבלות התוקף בתחנה

  4. 03:07

    הורדת Mimikatz

  5. 03:44

    צפייה בכרטיסי ה-Kerberos

  6. 04:38

    הבעיה בחילוץ ה-TGT

תמלול ההרצאה: התקפת Pass-The-Ticket חלק 1

הטקסט המלא של הדקות הראשונות בהרצאה «התקפת Pass-The-Ticket חלק 1» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    שלום לכולם, בהרצאה זו אנחנו נגנוב TGT של יוזר בלי לדעת את הסיסמה שלו, בלי שיהיה לנו הרשאות של אדמיניסטרטור מקומי על התחנה. אנחנו נהיה האקרים שפרצנו ליוזר פשוט בלי האדמין בתחנה, ונגנוב לו את ה-TGT שלו, את כרטיס ההזדהות שלו, בלי לדעת את הסיסמה של יוזר ובלי לשבור את הה"א שלה.

  2. 00:24

    ואחרי שנגנוב את ה-TGT שלו, נתחזה ליוזר הזה מתוך הווינדוס שלנו. בואו תראו מה קורה לפני שמתחילים, היוזר יכול להיכנס פה לשרת הקבצים, לעבוד פה על הקבצים שלו.

  3. 00:36

    אבל האקר שלוקח בדיוק את הנתיב הזה ומנסה להתחבר בדיוק לאותו שיתוף. רק בואו נרשום את השם המלא שלא יהיו לנו בעיות עם ה-DNS.

  4. 00:45

    אני גם אעשה פינג לשם הזה לראות שאין לי בעיות של ריזולווינג של DNS. יפה, ה-DNS של האקר מסתכל על אותו DNS כמו של היוזרים.

  5. 00:55

    כולם מסתכלים על ה-DC בתור שרת DNS שלהם. אבל שימו לב, קופצת לי פה הודעה שפייל סרבר דורש ממני שם וסיסמה ואני לא יודע אותם בתור האקר. אני לא מצליח לפרוץ את הסיסמה של יוזר.

  6. 01:08

    זאת אומרת אני כאקר יושב על התחנה של היוזר הזה אבל אין לי את הסיסמה שלו. דרך אגב מה עוד יוזר יכול לעשות? הוא יכול לפתוח נניח איזושהי אפליקציה במקרה הזה ssms ולהתחבר לדאטאבייס למסד נתונים בsql הוא כותב פה את השם של השרת ושם windows authentication מה זה windows authentication?

  7. 01:30

    או טיקטים של קרברוס או ntlm והוא לא מכניס את הסיסמה כי ההזדהות מתבצעת אוטומט על ידי או קרברוס או ntlm ואני רואה שהוא מצליח פה להיכנס לתוך הדאטה בייסים ולטייל במסד נתונים כמובן שכרגע האקר לא יכול לעשות את זה האקר פותח את אותה תוכנה של ssms עושה קונקט שם את אותו השרת windows authentication עושה קונקט וכמובן שהוא לא מתחבר לוגין פייד אז ככה התחלנו את היום שאנחנו בתור האקרים לא

  8. 01:58

    יכולים להיכנס לשום מקום אבל שלחנו מייל פישינג ליוזר ויוזר פתח את המייל פישינג שלנו ואנחנו ב-CMD אצלו. שימו לב אנחנו לא run as אדמיניסטרטור כי היוזר הזה בעצמו לא אדמיניסטרטור על התחנה הוא בעצמו יוזר פשוט אז גם אם היינו רוצים להיות אדמיניסטרטורים לא היינו מצליחים אז

  9. 02:19

    אני עושה פה no אין לנו הרשאות של אדמיניסטרטור יש לי פה הרשאות של יוזר פשוט CMD פשוט קודם כל איך אני יודע שאני ב-CMD פשוט הוא מראה לי את השם של היוזר, תחשבו שאני שולט על הפקודות מרחוק כל הקבוצות שיוזר חבר בהן והכי חשוב פה מדיום מנדטורי לבל המדיום הזה אומר שאני

  10. 02:40

    יוזר פשוט אם הייתי ראן איזה אדמיניסטרטור זה היה היי אוקיי אז אנחנו עכשיו בתוך התחנה של יוזר אין לנו את הסיסמה שלו אין לנו הרשאות של אדמיניסטרטור מה אנחנו יכולים לעשות איך לגנוב את הtgt בואו ננסה להוריד את המימיקאץ אני כותב מימיקאץ גיטהאפ ואת הבחור הזה שפיתח אותו קיווי בסוף ג'נטל קיווי נכנס לגיטהאפ לוחץ פה על מימי קאץ שימו לב ג'נטל קיווי מימי קאץ ומוריד

  11. 03:07

    את ה-latest version את הגרסה האחרונה המקומפלת עכשיו תגידו לי אנטיווירוס יתפוס אותך האמת שאני ניטרלתי את האנטיווירוס ובחיים האמיתיים אנחנו יכולים להוריד את קובץ המקור שלו את המימי קאץ המקורי הזה ולשנות בו כל מיני דברים עד שלא יתפסו אותנו אבל אני כרגע לא מתעסק בתכנות אני מתעסק במהות להתחמק מאנטיווירוס

  12. 03:29

    זה נושא בפני עצמו וזה אכן אפשרי למעשה כל חברות ה-PT לוקחות את הכלים האלו מגיטהאב ומשחקות איתם משנות כל מיני דברים עד שאנטיווירוס לא תופס אותם אני נכנס ל-X64 פותח פה CMD בתוך התיקייה הזאת וכותב מימיקאץ נקודה אקזה הנה אני בפנים עכשיו אני מנסה לראות את כל הטיקטים שיש לנו ואני רואה פה את כל הטיקטים שיש לי יוזר וזה נשמע

  13. 03:54

    טוב אני רואה פה את ה-TGT שלו, אני רואה את השיתופים שהוא ניגש אליהם, אני רואה את ה-SQL שהוא ניגש אליו. זאת אומרת, לכל שירות יש טיקט משלו.

  14. 04:04

    דרך אגב, LDAP זה תשאול של Active Directory, אבל כל הטיקטים האלו זה לשירותים מסוימים, כמו SQL, כמו שיתופים. אני רוצה לגנוב את ה-TGT שאיתו מקבלים את כל הטיקטים האחרים.

  15. 04:17

    כי אם נניח אני אגנוב את הטיקט הזה, זה יהיה מצוין, אבל רק ל-SQL עצמו. אז זאת המטרה שלנו, ה-TGT הזה. שימו לב שהTGT שלי עם פלאג אינישיאל זה אומר הראשוני שקיבלנו אותו טוב בואו נחלץ את הTGT הזה נכתוב קרברוס TGT בתוך המימיקאץ נלחץ אנטר ונגלה להפתעתנו שפקודת קרברוס TGT לא מצליחה לחלץ לי את הסשן קי זה הקי הסודי שאיתו אני מצפין מידע לדומיין קונטרולר ל-KDC

  16. 04:46

    משתמשים בו במקום הסיסמה של יוזר אני אזכיר לכם שזה הפאקט שאני שולח ל-DC כדי לקבל טיקט לסרוויס מסוים ליעד מסוים ובבקשה שלי אני אומר לו SPN זה לאיזה יעד אני רוצה לקבל את הסרוויס טיקט אני מעביר לו את ה-TGT המקורי

לקורס המלא: מבדקי חדירה ל‑Active Directory

ההרצאה הקודמת: אימות עם חשבון מחשב בלבד ב-Kerberos - עבור Local System Account

ההרצאה הבאה: התקפת Pass-The-Ticket - חלק 2 - קבלת TGT עם Kekeo

הרצאות קשורות מקורסים אחרים

  • התקפת CSRF
  • הסבר על Pass Params ב-Flutter
  • יצירת Pass-Through Middleware
  • התקפת SQL injection

קורסים נוספים במסלול

  • קורס SOC - מיישם הגנת סייבר
  • קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP
  • קורס פריצה ומבדקי חדירה לאתרי אינטרנט - בדיקות חוסן לאתרים - Web Pentesting - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP
  • קורס סייבר והאקינג ל-Android - פריצה לטלפונים ואפליקציות אנדרואיד - בודק חוסן - Mobile App Pentesting