PracticU

התקפת NTLMRelayX
בשילוב עם MSFvenom

בלי כתוביותעם כתוביות
PracticU › קורס פריצה ומבדקי חדירה לתשתית ארגונית - בדיקות חוסן מתקדמות ל-Active Directory - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › התקפת NTLMRelayX בשילוב עם MSFvenom
מילון מושגים:
NTLM - פרוטוקול אימות ותיק של מיקרוסופט המבוסס על ערכי האש של סיסמאות, שקדם ל-Kerberos.
חשבון משתמש - זהות במערכת שמורכבת משם משתמש והרשאות, ומאפשרת למשתמש להתחבר ולפעול.
חתימה דיגיטלית - מנגנון מבוסס הצפנה שמוכיח את מקור המידע ושלא שונה בדרך, בעזרת המפתח הפרטי של החותם.
SMB - פרוטוקול של Windows לשיתוף קבצים ומדפסות ברשת ולגישה למשאבים מרוחקים.
טוקן - פיסת מידע שמשמשת לאימות או להרשאה, שהמערכת מנפיקה ללקוח ומוצגת בבקשות הבאות במקום סיסמה.
UAC - מנגנון ב-Windows שמבקש אישור לפני פעולות הדורשות הרשאות ניהול, כדי למנוע שינויים לא מורשים.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
TCP - פרוטוקול תקשורת אמין שמוודא שכל חבילות המידע מגיעות ליעד בשלמות ובסדר הנכון.

התקפת NTLMRelayX בשילוב עם MSFvenom
בשיעור זה נמשיך את התקפת ה NTLM Relay מהשיעור הקודם, והפעם נזריק אל המחשב הנפגע payload משלנו שנוצר בעזרת msfvenom, ונקבל שליטה מלאה בהרשאות המערכת. נראה גם מדוע ההרצה הראשונה נתקלה בדחיית הרשאות, מהו User Account Control וכיצד הוא מתנהג מרחוק, וכיצד חתימה דיגיטלית על SMB מונעת את כל ההתקפה.
נושאי הסיכום המוצגים בשיעור:
1. הכנת הסביבה: מפעילים מאזין נטקאט פשוט בפורט שנבחר, שממתין לחיבור שיגיע אחרי הפריצה, ומכינים טאב מאזין נפרד. הקורבן הוא מחשב Windows 10 עם שיתופים שזוהה בסריקת הרשת של השיעור הקודם, והריליי יופנה אליו.
2. חזרה על מהלך הריליי: הלקוח התמים פונה אל התוקף כי הוא משוכנע שזה שרת ברשת, הריליי פונה מיד אל השרת האמיתי, מקבל ממנו אתגר ומעביר אותו כפי שהוא אל הלקוח, הלקוח מצפין את האתגר בעזרת ה hash של הסיסמה שלו ומחזיר אותו, השרת מאשר שהתשובה נכונה ונותן לתוקף להיכנס, ואז התוקף מודיע ללקוח שהעימות נכשל.
3. הפרדת התפקידים: בהגדרות Responder מושבתים ההאזנה של SMB ושל HTTP, כי את השרת של SMB ימלא הריליי עצמו. Responder ממשיך להאזין ולחטוף פניות ברשת בלבד, וכשמישהו פונה ב SMB הריליי הוא זה שמטפל בו.
4. הריצה הראשונה: הלקוח התמים מקליד מילה אחת בדפדפן, Responder עונה שזה אני, הריליי מדווח על קבלת חיבור מהכתובת המקורית, ומבצע אימות מוצלח מול השרת היעד בשם המשתמש שנתפס. עם זאת מיד אחר כך מתקבל דחייה של הגישה.
5. ההסבר, User Account Control: אימות עבר אך הגישה נדחתה, והסיבה היא העקרון של מעט הרשאות ככל האפשר. גם משתמש השייך לקבוצת האדמיניסטרטורים עובד בתהליך הרגיל שלו עם טוקן של משתמש סטנדרטי, ורק אישור מפורש, ההנחיה המוכרת של הרצה כמנהל, מעלה את ההרשאות, מנגנון שקיים מאז וויסטה.
6. UAC מרחוק: מפתיע למדי, גם המנגנון הזה פועל על חיבורים מרחוק. משתמש מקומי שהוא חבר בקבוצת האדמיניסטרטורים של המחשב אינו מקבל העלאת הרשאות בחיבור מרחוק, ומקבל הודעה שאין לו הרשאות מוגברות, בעוד משתמש מדומיין שהוא חבר באדמיניסטרטורים המקומיים מקבל את הטוקן המלא גם מרחוק, כי בדומיין נדרש לנהל מרכזית.
7. דימוי המצב במעבדה: בסביבת ההדגמה אין שרת דומיין, ולכן נעשה זאת ידנית, על ידי הוספת ערך למפתח ברגיסטרי שמבטל את הגבלות User Account Control בגישה מרחוק, והפעלה מחדש. במציאות ההתקפה הייתה עובדת כך כך, כי המשתמשים שנתפסים בארגון הם משתמשי דומיין, ותפיסת מנהל רשת מהדומיין מעניקה הרשאות מלאות מיד.
8. פעולת ברירת המחדל: בהרצה בלי הוראות נוספות, כשהריליי מצליח לעבור עימות, הכלי מבצע פעולת ברירת מחדל של שאיבת קובץ ה SAM, כלומר אוסף את ה hashים של כל המשתמשים המקומיים של המחשב הנפגע, של האדמיניסטרטור ושל שאר המשתמשים. אותם hashים אפשר לפרוץ בעזרת John the Ripper או באתרי אינטרנט ייעודיים, והאנטי וירוס היה דלוק כל הזמן ולא תפס דבר.
9. הרצת פקודה מוגדרת: אפשר להורות לכלי להריץ פקודה ספציפית ברגע החדירה, למשל פקודת רשימת קבצים על המחשב הנפגע. בניסיון אחד האנטי וירוס תפס את הפעולה, לאחר נטרולו הריצה חזרה עברה והפלט התקבל אצל התוקף, ואפשר היה להריץ שם כל פקודה שרצוי.
10. העלאה והרצה של payload: האפשרות החזקה ביותר היא להורות לכלי להעלות אל המחשב הנפגע קובץ שנבחר ולהריצו. מייצרים בעזרת msfvenom payload של reverse tcp בפורמט exe, המפנה אל הכתובת והפורט של המאזין שלנו, ומורים לריליי להעלות אותו ולהריצו ברגע החדירה.
11. השליטה המלאה: כשהמשתמש פשוט סוגר ופותח מחדש את הדפדפן, הריליי פועל שוב, ה payload מועלה ומורץ, והמאזין מקבל חיבור. בעזרת whoami מתגלה שהמשתמש הוא System, וכך גם ניווט בתיקיות של המשתמש ויצירת קובץ על שולחן העבודה שלו. סוד מעניין, הכלי אינו פשוט מריץ את הקובץ, הוא מתקין אותו כשירות של ווינדוס, ולכן הוא רץ עם הרשאות של המערכת עצמה.
12. ההגנה, חתימה דיגיטלית על SMB: כדי למנוע את ההתקפה מגדירים במדיניות האבטחה המקומית, תחת מדיניות מקומיות ואפשרויות אבטחה, שהלקוח של מיקרוסופט ידרוש תמיד חתימה דיגיטלית על התקשורת, וכן שהשרת ידרוש חתימה תמיד. כששני הצדדים דורשים חתימה, הריליי נכשל מיד ומדווח שהחתימה נדרשת, כי השרת מזהה שמדובר במי שאינו הלקוח המקורי.
13. מדוע אף אחד לא מפעיל את זה: SMB משמש גם להדפסה מול מדפסות וסורקים ישנים שאינם יודעים לחתום דיגיטלית, והפעלת הדרישה עלולה לשבור אותם, ולכן מנהלי רשת נמנעים מהפעלת ההגדרה וההתקפה ממשיכה לעבוד בשטח. אזכור היסטורי, פעם הייתה קיימת גם שיטה להסיר את סימון החתימה מול שרת שאינו דורש אותה, והיא כבר אינה עובדת היום.
14. המסקנה: שרשור של שלושה כלים, Responder שמביא את התעבורה, NTLMRelayX שמעביר את העימות ומעלה את ה payload, ו msfvenom שיוצר אותו, מספיק כדי להפוך לחיצת אנטר אחת של משתמש תמים לשליטה מלאה במחשב בהרשאות המערכת, וההגנה היחידה האפקטיבית היא חתימת SMB הכפויה משני הצדדים.
בשיעור זה הושלמה התקפת הריליי עם payload משלנו, הוסבר מדוע ההרשאות נדחו בהתחלה בגלל User Account Control וכיצד עוקפים זאת בסביבה ללא דומיין, הודגמו פעולות ברירת המחדל של הכלי והרצת פקודות, ה payload הועלה והורץ כשירות בהרשאות System, ונראתה ההגנה של חתימה דיגיטלית על SMB שמנטרלת את ההתקפה כולה ואת הסיבות שבגינן היא אינה מופעלת בארגונים.
SR12572HE

פרקי ההרצאה: התקפת NTLMRelayX בשילוב עם MSFvenom

  1. 00:00

    הכנת מאזין לחיבורים

  2. 01:00

    קביעת מטרת ההתקפה

  3. 01:38

    איך עובדת ההתקפה

  4. 02:15

    העברת האתגר לקורבן

  5. 02:54

    המתנה לקליינט תמים

  6. 03:34

    התחזות של Responder

  7. 04:11

    השלמת העימות בהצלחה

תמלול ההרצאה: התקפת NTLMRelayX בשילוב עם MSFvenom

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

  1. 00:02

    שלום לכולם, בהרצאה הזו אנחנו רוצים להמשיך עם ntlm relay attack ולתקוף את המטרה שלנו עם payload משלנו אנחנו דבר ראשון נייצר listener, נטקאט הכי פשוט, בפורט 444 וכשמישהו יתחבר אליו נעשה UMI ונעשה טאפ חדש זה יהיה הטאפ של הליסטנר, אני עושה עליו דאבל קליק וכותב לו listener, מאזין הוא מחכה שמישהו יתחבר אליו

  2. 00:28

    הקורבן שלנו זה הולך להיות Windows 10.2. עשינו בהרצאה הקודמת סריקה של הרשת וראינו וראינו שהIP שלו של הקורבן זה 187 ואני מזכיר לכם שהקורבן שלנו יש עליו שיירים שיתופים אז אנחנו עושים דבר כזה קודם כל בוא נבדוק איך עובדת הפקודה הסקריפט הזה התקנו אותו בהרצאה הקודמת בלי שום אופציות נוספות סתם נריץ אותו נגד הטארגט IP1 דרך אגב אפשר לשים גם קובץ

  3. 00:57

    מינוס tf ולשים קובץ של מטרות בוא נראה מה קורה כשיש לנו רק טארגט אחד עם סופורט של smb2 אני מזכיר לכם ש smb1 כבר מבוטל בווינדוס 10 כברירת מחדל smb1 מבוטל אז אנחנו מריצים את הסקריפט שיתמוך ב smb2 סופורט לטארגט הזה שימו לב אנחנו עושים ריליי עכשיו כדי שהריליי הזה יעבוד צריך שמישהו יפנה אליי לעימות ואני אנצל את זה שהוא מנסה לעבור עימות

  4. 01:24

    דרכי ובו זמנית אני אגלגל את הבקשות שלו לשרת שאני רוצה לפרוץ. הוא יעבור עימות מול השרת בשמי ואני אכנס פנימה.

  5. 01:34

    הלקוח התמים צריך לפנות אליי כי אני גורם לו לחשוב שאני שרת כלשהו ברשת והוא עובר עימות מולי. ברגע שהוא פונה אליי אני רואה שהוא פנה אליי, אני ישר פונה לשרת האמיתי שאני רוצה לפרוץ אליו.

  6. 01:47

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

  7. 02:15

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

  8. 02:25

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

  9. 02:39

    אז פה אני מוכן ל-relay, אתם רואים, ה-relay מחכה. ה-listener זה אחרי הפריצה, זה יותר מאוחר. ה-relay מחכה, אבל אני צריך עוד tab כדי להיות man in the middle, כדי להיות זה שבאמצע של לגרום לאחרים לדבר איתי.

  10. 02:55

    בשביל זה יש לנו ריספונדר. איפה הריספונדר שלנו? הנה, זה הריספונדר. בתוך הריספונדר שלנו חיבינו את ה-SMB וה-HTTP.

  11. 03:03

    אני לא רוצה שהוא יהיה שרת SMB ו-HTTP. למה? כי שרת SMB אצלי הולך להיות הריליי. הריליי אצלי, שימו לב, הוא HTTP והוא SMB, הוא שרת של השיתופים. אני אמרתי לריספונדר, אל תהיה שרת של SMB, וכן תחטוף את הסשנים, כן תכניס אותי באמצע השיחה כן תתחזה לשרתים ברשת אבל smb אתה לא נוגע אם מישהו פונה ב smb אני רוצה שהריליי יטפל בו אז אני פה שם את הרספונדר הרספונדר מתחיל להאזין אבל שימו

  12. 03:34

    לב בלי smb הוא רק מאזין וחוטף את הפניות שיש אוקיי אז אני נהיה באמצע ואם מישהו יגיע אליי הריליי יענה לו ב smb עכשיו שימו לב מה יקרה עכשיו מישהו יכתוב פה לא יודע איזושהי מילה פי פי פי פי פי פי פי הרספונדר אומר פי פי פי פי פי פי פי נקודה לוקל זה אני הוא אומר שאתה מחפש פי פי פי נקודה לוקל זה אני אתה מחפש wpad local זה גם אני הוא אומר הכל זה

  13. 04:01

    אני בוא תעבור מול עימות אותי אתה חיפשת פתאום הריליי מתחיל receiving connection from 184 הוא קיבל מ-184 אבל שימו לב אי אפשר לתקוף חזרה 184 והוא תוקף ב-smb את 187 מה זה אומר הוא מקבל מ-184 מעביר ל-187 Authenticating against 187, as Alex succeeded, הוא הצליח, הבנתם? הוא עשה את כל הטריק הזה של העברה, Change, Respond, Challenge, Respond, העביר

  14. 04:30

    את זה, והצליח לעבור עימות מול 187, אבל אז יש לנו פה תקלה, שימו לב מה שהוא

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

ההרצאה הקודמת: התקפת NTLMRelayX - ביחד עם Responder

ההרצאה הבאה: הסבר על התקפת MiTM6 - ועל WPAD

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

  • הסבר על msfvenom
  • פרוטוקול HSRP בשילוב עם SLA
  • התקפת CSRF
  • התקפת SQL injection

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

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