PracticU

גילוי פריצה עם ETW
SilkETW

בלי כתוביותעם כתוביות
PracticU › קורס SOC - מיישם הגנת סייבר › גילוי פריצה עם ETW SilkETW
מילון מושגים:
תהליך - מופע של תוכנה שרצה בזיכרון, עם הקוד, הנתונים והמשאבים שהוקצו לה על ידי מערכת ההפעלה.
שירות - תוכנה שרצה ברקע ומספקת פונקציונליות לרכיבים אחרים, לרוב ללא ממשק משתמש, ומופעלת אוטומטית עם המערכת.
לוג - רישום מתועד של אירועים ופעולות שמתרחשים במערכת או בתוכנה, המשמש למעקב ולאיתור תקלות.
JSON - פורמט טקסט קריא לייצוג נתונים מובְנים כזוגות מפתח-ערך, נפוץ להחלפת מידע בין שרת ללקוח.
קרנל - ליבת מערכת ההפעלה, שמנהלת את החומרה, הזיכרון והתהליכים ומתווכת בינם לבין התוכנות.
הרשאה - קביעה אילו פעולות ומשאבים מותרים למשתמש או לתהליך לאחר שזהותו אומתה. שולטת במי רשאי לעשות מה.
אירוע - התרחשות שהמערכת מזהה ויכולה להגיב לה, כמו לחיצת עכבר, הקשה או סיום פעולה.
זיוף - התחזות ברשת בעזרת זיוף זהות, כמו כתובת מקור או שולח, כדי להטעות מערכת או משתמש.

גילוי פריצה עם ETW SilkETW
דוגמה מלאה לזיהוי הזרקת תהליך לשירות מערכת באמצעות כלי שמתחבר ל-ETW ושומר את הלוגים כקובץ JSON.
העקרון שמודגם
1. שני צדדים בתרגיל: כלי מעקב שמאזין לספק ETW של יצירת תהליכים בקרנל, וכלי תקיפה שמנסה להזריק תהליך פקודות לתוך שירות מערכת ולקבל את ההרשאה החזקה שלו.
2. מה רואים בלוג: רשומת האירוע מראה את ה-process ID של התהליך שנוצר, ואת ה-parent ID שממנו הוא "יורש" הרשאות. בתהליך שנוצר באופן תקין, ה-parent ID שונה מה-process ID של מי שבפועל הפעיל את הפקודה.
3. הסוד לזיהוי: כשתוקף מצליח "לזייף" את ה-parent בתהליך שהוא יוצר, הוא יורש הרשאות מתהליך אחר (בעל הרשאה גבוהה) ולא מהתהליך שבאמת הפעיל אותו. פער כזה בין מי שהפעיל בפועל לבין ה-parent הרשום באירוע הוא הסימן שמגינים מחפשים.
4. מסקנת מערכת ניטור: מערכת ניטור מרכזית צריכה לבדוק בכל אירוע יצירת תהליך שה-parent ID תואם למי שבאמת הפעיל את הפעולה, ולהתריע כשיש אי-התאמה.
שימו לב
ניתוח כזה נעשה על נתונים גולמיים מתוך קובץ הלוג, ודורש כלי עיבוד (כמו פירוק JSON) כדי להפוך אותם לקריאים.
הסטודנט יודע עכשיו לפי איזה סימן במבנה הנתונים של ETW מזהים זיוף הרשאות באמצעות תהליך-אב, בלי לקבל את רצף הפקודות שמבצע את ההזרקה בפועל.
השיעור הבא בקורס: גילוי של הזרקת דוט-נט זדוני לזיכרון

פרקי ההרצאה: גילוי פריצה עם ETW SilkETW

  1. 00:00

    גילוי CMD מוסתר ב-ETW

  2. 00:39

    הליבה שלא ניתן לעקוף

  3. 01:15

    הקמת מכונת תרגול בענן

  4. 01:52

    התחברות לשולחן עבודה מרוחק

  5. 02:27

    הפעלת הכלי בתור מנהל

  6. 03:25

    חיבור SilkETW לפרוביידר הליבה

  7. 04:22

    קיצורים בשורת הפקודה של PowerShell

  8. 04:59

    הרצת הסקריפט עם Bypass

תמלול ההרצאה: גילוי פריצה עם ETW SilkETW

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

  1. 00:02

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

  2. 00:35

    אז אנחנו רוצים לעקוב אחרי הליבה הזאת, אחרי הלוגים שלה, נשים את הכל בקובץ JSON, נעשה את זה בעזרת תוכנת Silk ETW, נתפוס את המקרה של יצירת CMD בתוך הפרינטס פולר, ונראה איך אנחנו רואים את זה בתוך הקובץ של הלוג.

  3. 00:52

    אנחנו נעשה למעשה את הדוגמה שלהם תכלס, נראה שהכל עובד לנו בפועל. אז יש לנו פה שני שחקנים, את ה-Silk ETW שעוקב אחרי הלוג ו-Power של זדוני שמזריק את ה-CMD לתוך ה-Print Spooler.

  4. 01:08

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

  5. 01:23

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

  6. 01:36

    אז אני נכנס לתוך הווינדוס 11, עושה רייט קליק קונקט לתוך ה-VPN שלהם, קיבלנו כתובת IP פנימית שמה, עושים עכשיו remote desktop Connection ומתחברים ל-IP שהם נתנו לי.

  7. 01:50

    בואו נבדוק שזה נכון, 54 בסוף, נכון, ונתחבר עם User Administrator והסיסמה הזאת, הוא אומר לי שהוא לא מצליח להתחבר, אז פשוט נשמיד את המכונה ונלחץ כאן ליצור מכונה חדשה.

  8. 02:04

    Spawn זה לייצר, ליצור, ונחכה שהוא ייצור לנו מכונה בענן שלהם על השרתים שלהם. אוקיי, קיבלנו כתובת IP, אנחנו נכנסים לתוך מכונה וירטואלית שמחוברת ל-VPN שלהם ועושים קונקט.

  9. 02:20

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

  10. 02:46

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

  11. 03:05

    אני עושה Run as Administrator כי PowerShell זה למעשה ה-PowerShell הזדוני שהולך לעשות הזרקה של CMD לתוך פרינצפולר. נהדר, נעשה cd/, נצא לתיקייה ראשית.

  12. 03:18

    בינתיים פה הכנתי את הפקודה שמתחילה לאסוף לי נתונים עם Silk ETW מתוך קרן. זאת אומרת סילק ETW מתחבר למערכת ETW של ווינדוס מייצר שם סשן בפנים שמאזין לפרוביידר בשם Windows Kernel Process הפרוביידר הזה מספק אירועים מתוך הליבה מתוך הקרנל על תהליכים חדשים על תוכנות חדשות שמופעלות במחשב ורושם הכל לתוך הקובץ הזה ברגע שנעשה Enter מערכת

  13. 03:49

    המעקב של ETW נוכל לראות שנוצר סשן חדש פה באיבנט טרייסינג סיישן כרגע אין לנו פה סילק תסתכלו אין לנו פה שום סיישן של סילק ברגע שנעשה פה אנטר אתם תראו שנוצר סיישן חדש שעוקב אחרי האירועים במקום שנעשה את זה ידנית בממשל גרפי התוכנה עושה לנו את זה בשורת פקודה עכשיו לגבי ההזרקה ניכנס לתיקי איפה שיש את הסקריפט של פאוורשל cd זה change directory

  14. 04:18

    האמת הפקודה בפאוורשל היא אחרת אליאס cd אנחנו נראה שזה קיצור cd זה קיצור לפקודה אמיתית בפאוורשל שנקראת set-location יכלנו לכתוב set-location רווח התיקייה אני כתבתי cd כי אני רגיל מימים של cmd לכתוב פקודות של DOS ולטובת אנשים כמוני הם עשו לנו אליאס קיצור שcd למעשה מפעיל את הפקודה המקורית עכשיו אנחנו מפעילים פאוורשל עם

  15. 04:48

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

  16. 05:01

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

  17. 05:18

    אז בוא נמצא את ה-spoolservice, יש לנו כמה שיטות, שיטה ראשונה זה ממשק גרפי לבוא לטאסק מנאג'ר לחפש פה

לקורס המלא: קורס SOC אונליין – מיישם הגנת סייבר

ההרצאה הקודמת: הזרקת CMD - וזיהוי התקפה - חלק 2

ההרצאה הבאה: גילוי של הזרקת - דוט-נט זדוני לזיכרון

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

  • פריצה של UnCrackable-Level1 - חלק 1
  • פריצה ל-SSH עם Hydra
  • XSS - פריצה לאתר עם Javascript
  • פריצה לאתר דרך כתובת URL

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

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