
הטקסט המלא של הדקות הראשונות בהרצאה «שליפת כל הסיסמאות של הארגון מתוך זיכרון של DC» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם בהרצאה הזו אנחנו רוצים לפתור את האתגר הרביעי את המשימה הרביעית של פריצת סיסמה פריצת האשים באקטיב דירקטורי קודם כל הם רוצים שניכנס לתיקיית דאונלורדס ונריץ את המימיקאץ טוב בואו נלך למחשב של הקורבן ניכנס כאן לתיקיית דאונלורדס יש לנו פה מימיקאץ.אק זה
כבר מותקן והאנטיווירוס כנראה קבוע אצל הקורבן שלי דרך אגב, אני התחברתי לקורבן דרך SSH, כי בקורבן רץ סרוויס שמקבל חיבורי SSH, ואז אני לא צריך להסתבך עם הממשק הגרפי.
יש לי CMD, ישירות לקורבן, ואנחנו בתוך מימיקאץ. דבר ראשון, צריך לקבל פריבילגיה, הרשאה של די-באג כדי לחטט בזיכרון של תוכנות אחרות במחשב, כאילו אני מחפש באגים אצלהם, אז אני מריץ את הפקודה הזאת.
ועכשיו אני עושה LSA Dump. LSA Dump, למעשה אני מתחבר לתהליך בזיכרון שנקרא LSA, Local Security Authority, ועושה Dump. Dump זה מקבל את כל מה שיש לו, את כל ההעתק.
והבעיה היא שאני מקבל Error, כי מייקרוסופט עשו הגנה. איך מתגברים על ההגנה? יש לנו שתי אפשרויות. או לעשות Inject, להזריק לתוך הזיכרון עוד קוד נוסף שלי, זה נקרא Process Injection, אני מזריק לתוך ה-Process של מערכת ההפעלה קוד נוסף, קוד שלי שיודע לחלץ לי את הסיסמאות אני משדרג
את הפקודה והנה כל ההאשים יצאו לי או לחלופין אני יכול לעשות פאץ' פאץ' זה מתקן משנה את הקוד הקיים בזיכרון בסופו של יום זה תוצאה די דומה שאני מקבל את ההאשים אבל כאן אני מוסיף קוד נוסף לזיכרון פה אני משנה את הקוד הקיים הכל בתוך זיכרון אני לא נוגע בהרדיסק הרי מה קורה כל תוכנה שרצה היא קודם כל מועתקת מתוך דיסק, מתוך הארדיסק לזיכרון, ואז מורצת
מתוך הזיכרון. למעשה זיכרון זה קופי של קובץ בדיסק. ואז אני משנה את הפקודות בתוך הזיכרון. כמובן שאם נעשה ריסטארט או נסגור את התוכנה ונפעיל אותה מחדש, אז הפייץ' הזה לא יעבוד, השינוי הזה לא יחזיק מעמד.
אם אני רוצה שהפייץ' הזה יהיה קבוע, השינוי שלי יהיה קבוע, אני צריך לשנות את קובץ אקזה. אבל אני לא יכול לעשות את זה, כי קובץ אקזה חתום דיגיטלית.
אז בגלל שאני לא יכול לשנות את הפקודות בארדיסק אני משנה אותה בתוך זיכרון כי אחרי שהקובץ החתום נבדק ונמצא תקין הוא נטען כולו לזיכרון רם ואחרי זה מורץ אז אני משנה בפייץ' את הפקודות בתוך הזיכרון פעם בימים שלא הייתה חתימה דיגיטלית היה יותר קל כי בימים
ההם אפשר היה לשנות קובץ בדיסק בלי בעיה היום כל הקבצים חתומים דיגיטלית דרך אגב אם הייתי רוצה להריץ הכל כפקודה אחת ולא לעשות שורה שורה הייתי יכול לצאת ממימיקאץ, לחזור חזרה לדוס רגיל, ל-CMD רגיל, ולהריץ הכל כשורה אחת.
זה למעשה אותן פקודות בדיוק. מימיקאץ רווח פקודה ראשונה, רווח פקודה שנייה, ושימו לב, בפקודה שנייה יש לי פה רווח. כדי שהוא לא יחשוב שזה רווח בין הפקודות, אלא יבין שכל זה פקודה אחת, אני שם גרשיים.
ואחרי זה פקודה שלישית שזה אקזיט, לצאת מזה. אז הוא יריץ מימיקאץ, יריץ פקודה ראשונה, אחרי זה יריץ פקודה שנייה, אחרי זה פקודה שלישית.
פקודה שנייה חייבת להיות בגרשיים בגלל הרווח הזה. ואותה תוצאה אנחנו מקבלים, ורק יוצאים חזרה ל-CMD. למה הדבר הזה ממש חשוב וטוב?
כי אפשר לשלב את המימיקאץ באיזשהו סקריפט שעושה כל מיני דברים. אני יכול להגיד לסקריפט תריץ מימיקאץ, ומהפלט הזה תוציא כל מיני נתונים.
טוב, מה הם ביקשו מאיתנו? הם ביקשו מאיתנו לעשות דאמפ של כל ההאשים, ועכשיו אפשר לפרוץ את ההאשים האלו כאשר יש לנו פה קובץ טקסט עם כל הסיסמאות האפשריות. ומינוס m1000 אומר איזה סוג של האש יש כל מיני שיטות לעשות האש ערבול חד-כיווני יש שעה 1 שעה 256 ntlm הם מבקשים מאיתנו למצוא סיסמה למשין 1 בוא נמצא את ההאש של משין 1 ונפרוץ אותו.
אז אני הולך כאן ומחפש יוזר בשם מחשב 1 שימו לב וגם המחשב עצמו יש לו סיסמה, ואני רואה שלמשין אחד יש האש כזה וכזה. אני כותב האשקט מינוס M1000, רווח ההאש שאני רוצה לפרוץ, רווח שם של וורדליסט, rocku.txt. בואו נראה איפה הרוקיו שלי נמצא.
אני לא רוצה לגעת פה באמצע הפקודה, אני פותח טאפ חדש, רק לחפש את הרוקיו, לוקייט rocku.txt.
הנה, אני רואה שהוא נמצא במיקום הזה, הוא מכווץ בזיפ, אז אנחנו יכולים לעשות gzip-d או gunzip, שתיהם יעשו אותו דבר, יחלצו לי את הקובץ, אני עושה נניח gzip, הוא אומר לי permission denied, גישה נדחתה, בגלל זה אני עושה עכשיו פקודה עם סודו, עם הרשאות של רות, עם
הרשאות של אדמיניסטרטור, וצריך להקיש סיסמה של יוזר נוכחי, קל לי, נראה מה יש לנו בתיקייה, ואני רואה שיש לי פה rawq.txt, בואו נבדוק שזה באמת עובד, rawq.txt באמת עובד, הנה יש לנו את קובץ טקסט אפשר ממש לראות מה