PracticU

הסבר על NTLM Hash
ועל התקפת Pass-The-Hash

בלי כתוביותעם כתוביות
PracticU › קורס פריצה ומבדקי חדירה לתשתית ארגונית - בדיקות חוסן מתקדמות ל-Active Directory - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › הסבר על NTLM Hash ועל התקפת Pass-The-Hash
מילון מושגים:
NTLM - פרוטוקול אימות ותיק של מיקרוסופט המבוסס על ערכי האש של סיסמאות, שקדם ל-Kerberos.
האש - פונקציה שממירה מידע לערך קצר באורך קבוע. שינוי קטן בקלט משנה את התוצאה, והיא חד-כיוונית.
דומיין קונטרולר - שרת בדומיין של Active Directory שמאמת משתמשים ואוכף מדיניות והרשאות ברשת הארגונית.
CMD - שורת הפקודה הקלאסית של Windows (Command Prompt), להרצת פקודות ותוכניות בממשק טקסטואלי.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
וירוס - תוכנה זדונית שמשכפלת את עצמה ומתפשטת ממחשב למחשב, ועלולה לפגוע בקבצים או בפעולת המערכת.
שורת פקודה - ממשק טקסטואלי שבו מקלידים פקודות למערכת ההפעלה ומקבלים תגובה בטקסט, במקום להשתמש בעכבר.
אדמיניסטרטור - משתמש בעל הרשאות הניהול הגבוהות ביותר במערכת, שיכול לשנות הגדרות, להתקין תוכנות ולנהל משתמשים אחרים.

הסבר על NTLM Hash
ועל התקפת Pass-The-Hash
בשיעור זה אנו לומדים איך עובד NTLM, איך פורצים אותו ואיך מגנים עליו, ונכנסים עמוק עד לרמת הפאקטים שלו כדי להבין מה באמת קורה בפנים. לפני הכל אנו מסדירים בלבול נפוץ בין סוגי ה-hashים השונים.
נושאי הסיכום המוצגים בשיעור:
1. הבלבול בשמות: ל-hashים המקומיים נוהגים בטעות לקרוא NTLM hash, אך השם הנכון הוא NT hash, כאשר NT הוא New Technology, כלומר כל ה-Windows המודרני. חשוב להפריד בין hash מקומי שיושב בדיסק לבין hash שעובר ברשת, שהם שני דברים שונים לגמרי, וכאשר מדברים על NTLM v2 מדובר בגרסה של פרוטוקול העימות ברשת, פרוטוקול בדיקת שם משתמש וסיסמה.
2. מהו ה-hash המקומי: זהו ערבול חד-כיווני של הסיסמה המקורית של המשתמש, והוא הפריט שנשמר בפועל בדיסק, בקובץ SAM במחשב המקומי או בקובץ ntds.dit בשרת המרכזי בדומיין קונטרולר, במקום לשמור את הסיסמה בצורה גלויה.
3. שליפת ה-hash מהדיסק: אנו רואים שאפשר לשלוף את קובץ ה-SAM בעזרת פקודת reg save המובנית בכל Windows, וברגע שגנבנו את ה-hash של הסיסמה, מבחינת המערכת זה כמעט כאילו גנבנו את הסיסמה עצמה, כי ה-hash מספיק כדי להזדהות מול שירותים רבים.
4. Pass-The-Hash: בעזרת כלים כמו Mimikatz והפקודה sekurlsa לביצוע pass-the-hash, התוקף לוקח את ה-hash שחילץ מהמחשב ומזדהה איתו בחיבורי רשת, טוען שהוא המשתמש שגנב לו את ה-hash, והצד השני מאמין לו, כיוון שגם אצלו שמור אותו hash.
5. למה הצד השני מאמין: מזה שנים רבות אף אחד לא שומר את הסיסמה המקורית בדיסק, מפחד שיגנבו את הדיסק מהשרת, ולכן כל השרתים שומרים אצלם את הסיסמה לאחר הערבול. הערבול הוא חד-כיווני ואי אפשר לעשות לו reverse לסיסמה המקורית, ולכן כשהתוקף מציג את אותו hash, מבחינת השרת יש לו את אותה סיסמה.
6. Single Sign-On וה-LSASS: רוב השירותים יודעים להזדהות עם ה-hash כאמצעי זיהוי כדי לחסוך מהמשתמש הקשת סיסמה בכל פעם. מכניסים סיסמה פעם אחת בכניסה ל-Windows, ותהליך ה-LSASS, ה-Local Security Authority, שאפשר לראות ב-Task Manager, זוכר בתוכו את ה-hashים של כל המשתמשים שנכנסו למחשב ועושה במקומם עימות מול השרתים.
7. דרישת גישה מקומית: גניבת ה-hash מתוך הזיכרון אינה אפשרית דרך האזנה ברשת, והתוקף חייב גישה לתוך המחשב עצמו, בין אם ב-CMD מרוחק ובין אם פיזית, כדי לבצע את השליפה.
8. טריק ה-dump דרך ממשק גרפי: ב-Task Manager אפשר לעשות קליק ימני על התהליך ולבחור create dump file, שמצלם את כל הזיכרון של התהליך. צילום זיכרון של תוכנה רגילה מותר ועובר בשקט, אבל dump של LSASS הוא פעולה מסוכנת שהאנטי-וירוס תופס מיד כהתנהגות חריגה. חשוב לציין שב-Windows 11 ההגנות נגד ה-dump הזה כבר מובנות ומופעלות אוטומטית, בעוד שבגרסאות קודמות היו הגנות שהיו צריך להפעיל ידנית.
9. Dump דרך שורת פקודה: הטריק של ה-Task Manager דורש גישה לממשק גרפי של המשתמש ואינו אפשרי בשורת פקודה. בשליטה דרך CMD אפשר להשתמש ב-Mimikatz, וכן בכלי procdump של מיקרוסופט, שנרכש מחברת Sysinternals ומסוגל לבצע dump לכל קובץ exe שמבקשים, כולל LSASS, אלא אם קיימת הגנה מיוחדת נגד dumps שלו. מניעת dump של LSASS היא בדיוק התפקיד של צוות ההגנה הכחול.
10. הסלמה לדומיין-אדמין והגבלה חשובה: בתוך ה-LSASS יושבים ה-hashים של כל מי שהתחבר למחשב מאז ה-restart האחרון, ואם אדמיניסטרטור דומיין נכנס לתחנה לתקן משהו, הסיסמה שלו נשמרת שם גם כן. התוקף מחפש תחנה שבה הוא אדמין מקומי, ממתין שדומיין-אדמין ייכנס אליה, גונב את ה-hash מה-LSASS, ועושה איתו pass-the-hash מול שרתים ברשת וכך הופך בעצמו לדומיין-אדמין. מדגישים שהתקפת Pass-The-Hash המפורסמת עובדת רק עם ה-hashים שנשלפו מקומית מהתחנה, מהדיסק או מהזיכרון של LSASS, ולא עם ה-hashים שעוברים ברשת.
סיכמנו את ההבדל בין NT hash מקומי לבין עימות NTLM ברשת, הבנו למה גניבת hash שווה כמעט כמו גניבת סיסמה, ראינו איך תהליך ה-LSASS מזכיר לנו את הסיסמאות ואיך שולפים ממנו, והדגשנו שהתקפת Pass-The-Hash פועלת רק על hashים מקומיים. בשיעור הבא נעסוק בנושא פרוטוקול Protocol NTLM. זה הכל, תודה רבה.
בשיעור הבא נעסוק בנושא פרוטוקול Protocol NTLM.
SR12929HE

פרקי ההרצאה: הסבר על NTLM Hash ועל התקפת Pass-The-Hash

  1. 00:00

    הבחנה בין סוגי ההאשים

  2. 00:46

    ההאש המקומי NT Hash

  3. 01:25

    מקור ההאש בדיסק

  4. 02:04

    ההאש שקול לסיסמה

  5. 02:41

    הבסיס להתקפת Pass the Hash

תמלול ההרצאה: הסבר על NTLM Hash ועל התקפת Pass-The-Hash

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

  1. 00:02

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

  2. 00:25

    האמת, השם האמיתי שצריך לתת להם זה NT-Hash. NT זה New Technology, הכוונה לכל ה-Windows של היום. anti hash אבל הרבה פעמים אומרים ntlm hash וזה ממש ממש מבלבל כי יש hashing שהם לוקאליים במחשב ויש hashing שעוברים בנטוורק ברשת זה לא אותם hashing זה שני דברים שונים לגמרי תכף נבין למה וזה ממש ממש מבלבל לנטוורק hashing הרבה פעמים

  3. 00:51

    אומרים ntlm v2 גרסה שנייה הייתה פעם גרסה ראשונה זה גרסה של פרוטוקול העימות פרוטוקול של בדיקת שם וסיסמה של יוזר. מזל שמוסיפים את ה-v2 לפעמים כדי לזהות שזה פרוטוקול של תקשורת.

  4. 01:06

    אז אני מבקש ממכם לא להתבלבל בין ntlm-hash או בשמו האמיתי nthash המקומי שהוא לוקאלי למחשב הוא בחיים לא עובר ברשת זה למעשה hash ערבול של סיסמה של יוזר זה למעשה כמו סיסמה מקורית של יוזר שעברה ערבול חד-כיווני היא זאת שיושבת בארדיסק של המחשב ב-SAM, בכובד SAM או בשרת המרכזי בכובד סנטי די אס דיד בדומיין קונטרולר זאת הסיסמה של היוזר פשוט במקום לשמור אותה בצורה

  5. 01:38

    גלויה שומרים את הסיסמה המקורית לאחר ערבול אנחנו גם יכולים לשלוף את הסיסמה הזאת עם רג נקודה אקזה שיש לנו בכל ווינדוס יש שם פקודת סייף ששולפת לי את כובד SAM יש לנו הרצאות איך עושים את זה ברגע שאני מבצע את הדבר הזה אני למעשה גנבתי את ההאש של לסיסמה המקורית ומבחינת המערכת זה כמו לגנוב את הסיסמה עצמה זה כמעט אותו דבר אני יכול להזדהות עם ה-hash הזה מול כל מיני שירותים אני יכול להיכנס ל-Mimicats ולהריץ Secure

  6. 02:11

    LSA past the hash ומה שאני עושה אני לוקח את ה-hash הזה שהוצאתי מתוך המחשב ומזדהה איתו בחיבורי רשת אני בא להתחבר לאנשהו אני טוען שאני איזשהו יוזר שגנבתי לו את ה-hash והצד השני מאמין לי כי אני נותן לו אותה ntlm hash של היוזר המקורי ולמה הוא מאמין לי כי גם בצד השני שמור אותו ntlm hash הרי כבר המון שנים אף אחד לא שומר את הסיסמה המקורית בארדיסק כי מפחדים שיגנבו

  7. 02:41

    ארדיסק מתוך השרת כל השרתים מסיבות של אבטחה

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

ההרצאה הקודמת: ניהול אוטומטי של סיסמאות - עבור Service עם gMSA

ההרצאה הבאה: פרוטוקול Protocol NTLM

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

  • הסבר על Kerberos ועל NTLM
  • הסבר על Pass Params ב-Flutter
  • הסבר של async ועל await
  • הסבר על Regions ועל AZ ב-AWS

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

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