PracticU

הסבר על Mimikatz בתוך Meterpreter x64

בלי כתוביותעם כתוביות
PracticU › קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › הסבר על Mimikatz בתוך Meterpreter x64
מילון מושגים:
ביט - יחידת המידע הקטנה ביותר במחשב, שערכה 0 או 1. שמונה ביטים מרכיבים בייט.
root - משתמש העל במערכות Linux, בעל הרשאות מלאות לכל פעולה. גם הרמה העליונה בעץ של תיקיות או נתונים.
סשן - פרק זמן של פעילות רציפה בין משתמש למערכת, שבו נשמר מידע על מצבו, למשל לאחר התחברות לאתר.
האש - פונקציה שממירה מידע לערך קצר באורך קבוע. שינוי קטן בקלט משנה את התוצאה, והיא חד-כיוונית.
RDP - פרוטוקול של מיקרוסופט לחיבור לשולחן עבודה מרוחק של מחשב Windows והפעלתו מרחוק.
שיתוף - תיקייה או משאב שהועמדו לרשת כדי שמשתמשים אחרים יוכלו לגשת אליהם לפי הרשאות.
NTLM - פרוטוקול אימות ותיק של מיקרוסופט המבוסס על ערכי האש של סיסמאות, שקדם ל-Kerberos.
אלגוריתם - רצף מוגדר של צעדים לפתרון בעיה או לביצוע משימה, שאפשר לממש בקוד.

הסבר על Mimikatz בתוך Meterpreter x64

בשיעור זה אנו פורצים לשרת פגיע באמצעות Metasploit, טוענים את Mimikatz לתוך Meterpreter ולומדים כיצד לשלוף סיסמאות מהזיכרון, ובעיקר פותרים את בעיית אי-התאמה בין תהליכים של 32 ביט ל-64 ביט באמצעות migrate.
נושאי הסיכום המוצגים בשיעור:
1. מטרת השיעור: פריצה לשרת SingBreeze דרך חור אבטחה מוכר ושליפת סיסמאות מתוך הזיכרון באמצעות Meterpreter ו-Mimikatz.
2. הכנת ההתקפה: וידוא שהקורבן זמין דרך עמוד הווב שלו, עבור להרשאות root בלינוקס, הפעלת msfconsole, בחירת האקספלויט וקביעת RHOST ב-show options לפני הרצה.
3. פתרון תקלות בזמן הפריצה: כאשר ההרצה נכשלת בודקים את ה-IP של הקורבן ומבצעים restart לשירות שנפל, עד שהפריצה מצליחה ונפתח סשן של Meterpreter.
4. הטענת Mimikatz: Mimikatz היא התוכנה היודעת לשלוף סיסמאות מתוך וינדוס, וב-Meterpreter היא נטענת כ-extension בשם kiwi באמצעות פקודת load, מה שמוסיף פקודות חדשות ל-help.
5. הבעיה הראשונה, אי-התאמה של ארכיטקטורה: כאשר אנו יושבים בתוך תהליך של 32 ביט, load kiwi טוען גרסת x86 והיא אינה מצליחה לשלוף סיסמאות על מערכת של 64 ביט.
6. זיהוי התהליך שלנו: באמצעות getpid ו-ps מגלים שאנו יושבים בתוך התהליך של SingBreeze שהוא בעצמו 32 ביט, ולומדים על עמודות ה-PID וה-PPID, כלומר מיהו תהליך האב שהפעיל תהליך מסוים.
7. בחירת תהליך יעד ל-migrate: התהליך winlogon.exe, האחראי על הלוגין של יוזרים בווינדוס, חייב להיות 64 ביט במערכת 64 ביט ורץ תחת היוזר System, ולכן הוא יעד מושלם, ואותו מאתרים באמצעות ps עם סינון לפי שם.
8. מעבר בין תהליכים: פקודת migrate מעבירה את Meterpreter מתהליך אחד למשנהו בתוך הזיכרון, בלי להשאיר קבצים על הדיסק, וכך אנו מתחבאים מאחורי תהליך חוקי של המערכת שגם מופיע ב-Task Manager.
9. שליפת סיסמאות לאחר המעבר: לאחר שעברנו לתהליך 64 ביט, load kiwi עובד כראוי והפקודה creds msv מחזירה את ה-credentials של היוזרים במחשב, כולל ההאש של היוזר אלכס.
10. פיצוח ההאש: את ההאש ששלפנו ניתן להעביר לאתרי פיצוח האשים מקוונים, המחזיקים ברשימות ענק של האשים שחושבו מראש, וכך מתגלה הסיסמה האמיתית של היוזר, מה שמאפשר גישה גם דרך remote desktop ושיתוף קבצים.
11. הניסיון הכושל עם Meterpreter 64 ביט: תאורטית ניתן היה לבחור כבר בשלב ה-payload ב-Meterpreter 64 ביט, אך ההרצה נכשלת מכיוון שתהליך SingBreeze עצמו הוא 32 ביט ואינו יכול להריץ קוד של 64 ביט, מה שניתן לוודא בעמודת Platform ב-Task Manager.
12. המשמעות של כישלון ה-payload: ההודעה exploit completed but no session was created אומרת שהפריצה עצמה הצליחה אך ה-payload לא הצליח להיטען וליצור סשן, ולכן מומלץ להשתמש ב-Meterpreter 32 ביט ולבצע migrate לתהליך 64 ביט, אלא אם כן פורצים ישירות לתוכנה שהיא 64 ביט.
13. creds על background: פקודת creds במצב background מציגה את כל ההאשים שנתפסו מהקורבן, כולל LM hash ו-NTLM hash המופרדים ביניהם בנקודתיים.
14. LM hash מול NTLM hash: LM hash הוא שיטת ההצפנה הישנה והחלשה שמיקרוסופט נטרלה לפני שנים רבות ותמיד מופיעה כמנוטרלת, ואילו NTLM hash הוא האלגוריתם המודרני והחזק יותר בו משתמשים בפועל, והוא זה שמפוצחים.
לסיכום, בשיעור זה למדנו לפרוץ לשרת פגיע, לטעון את Mimikatz לתוך Meterpreter, להבין את הבעיה של תהליכי 32 ביט מול 64 ביט ולפתור אותה באמצעות migrate, לשלוף האשים ולפצח אותם לסיסמאות אמיתיות.
בשיעור הבא נעסוק בנושא הסבר על Post Modules & Sessions בתוך Metasploit.
SR12473HE

פרקי ההרצאה: הסבר על Mimikatz בתוך Meterpreter x64

  1. 00:00

    הכנת הכלי Meterpreter

  2. 01:04

    הגדרת האופציות הנדרשות

  3. 02:40

    טעינת תוסף Kiwi

  4. 03:41

    תהליך 32 מול 64 סיביות

  5. 04:45

    זיהוי ה-process והיוזר

  6. 05:44

    הרשאות המערכת

תמלול ההרצאה: הסבר על Mimikatz בתוך Meterpreter x64

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

  1. 00:02

    שלום לכולם, בהרצאה הזו אנחנו רוצים לפרוץ לתוך שרת של סינגבריז ולשלוף משם סיסמאות דרך מטרפריטר אנחנו בודקים שהקורבן שלנו זמין שעמוד הווב שלו זמין, אפשר דרכו לפרוץ פותחים טרמינל, CMD של לינוקס וכותבים sudo-s עוברים למצב של רוט, שזה כמו Run as Administator ומפעילים MSF Console,

  2. 00:28

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

  3. 00:39

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

  4. 01:28

    IP אנחנו פורצים show options אני עושה רק קונטרול מינוס בצד ימין איפה שהפלוס והמינוס הגדולים במקלדת של המספרים עשיתי קונטרול מינוס כדי להקצין קצת את הרזולוציה ואני רואה שיש לי פה את כל השדות שהם בחובה יש אותם גם בפיילורד שמתפוצץ ואני עושה run ברגע שאני פרצתי פנימה הוא לא הצליח למה הוא לא הצליח מה קרה פה אפשר לעשות ריסטארט

  5. 01:56

    לסרוויס אולי או שIP השתנה לו בוא נבדוק מה הIP של הקורבן 147 בוא נעשה ריסטארט אה סרוויס דאון הנה עכשיו הוא הסרוויס נפל אפשר לעשות run ואפשר לעשות exploit זה לא משנה זה אותו דבר הסרוויס היה למטה עוד פעם לא הצליח מה קרה לו אני רואה שהוא נופל הסרוויס כאן נופל למה הוא נופל אני לא יודע נעשה לו ריסטארט אני רואה שגם

  6. 02:23

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

  7. 02:40

    אוה, עכשיו זה עובד. אנחנו בפנים, הוא כותב לנו מטרפריטר, אנחנו עושים help, ויש לנו את כל הפקודות, שימו לב, הפקודה האחרונה זאת privilege משהו, משהו שקשור ל-privilege.

  8. 02:51

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

  9. 03:07

    אבל מה אני רואה פה שהמימיקאץ הזה עובד על x86 Windows הוא התאים את הגרסת x86 שלו ובגלל שהוא עשה לואודות x86 גרסת 32 ביט 32 סיביות על x64 הוא לא יצליח שימו לב לשלוף סיסמאות פקודת הלפ קודם כל מראה שהתווספו לנו פקודות פה אחרי הפריבילג' פתאום יש לנו פקודות של קיווי שזה המימיקאץ

  10. 03:35

    ואם אני רוצה לעשות לדוגמה קרדנצ'לס של ntlm credentials אז אני מריץ את הפקודה הזאת היא לא תעבוד לי למה כי אני בתוכנה של 32 ביט על ארכיטקטורה של 64 ביט וזה פשוט לא עובד אתם רואים הוא לא שולף מה אפשר לעשות הטריק הכי פשוט זה לעשות מיגרייט לעבור לפרוצס אחר שהוא 64 ביט זאת אומרת שאני כרגע נמצא בפרוצס 2812 שאם נעשה

  11. 04:06

    ל-PS אנחנו נראה מי זה 28.12 28.12 הנה הוא זה הסינג בריז עצמו אבל שימו לב הסינג בריז עצמו הוא x86 זאת אומרת אני יושב בתוך תהליך של 32 סיביות בגלל זה גם הלואוד של קיווי היה ל-32 סיביות זאת הבעיה שאני יושב בתוך תהליך 28.12 שהוא תהליך של 32 ביט דרך אגב אם אתם רוצים לדעת מה זה עמודות למעלה כתוב שזה process ID מספר תהליך זה פרנט פרוצס איידי האבא שהפעיל לדוגמת תהליך מספר 92 הפעיל אותו אבא מספר

  12. 04:45

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

  13. 05:14

    אנחנו רוצים לעבור לתהליך אחר שהוא 64 ביט ואני ישר אומר לכם win logon שזה ה-windows logon שזה הפרוצס שאחראי התוכנה שאחראית על כל הלוגין של יוזרים היא חייבת להיות 64 ביט ב-windows 64 ביט אז אני אומר RPS תמצא לי מכל הרשימה הענקית של כל הפרוצסים רק פרוצס שהשם שלו win-logon, הנה זה win-logon-exe התוכנה שאחראית על לוגין,

  14. 05:43

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

  15. 05:56

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

לקורס המלא: קורס סייבר למתחילים אונליין

ההרצאה הקודמת: הסבר על Meterpreter בתוך Metasploit

ההרצאה הבאה: הסבר על Post Modules & Sessions בתוך Metasploit

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

  • התקנה של Mimikatz
  • תנאי בתוך תנאי
  • גניבת סיסמה מדיסק - עם Mimikatz - וונדוס 11
  • פקודת Select בתוך Select

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

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