PracticU

מעקב אחר הליבה של וונדוס - Kernel
ETW - Event Tracing for Windows
עם כלי גרפי - Traceview

בלי כתוביותעם כתוביות
PracticU › קורס SOC - מיישם הגנת סייבר › מעקב אחר הליבה של וונדוס - Kernel ETW - Event Tracing for Windows עם כלי גרפי - Traceview
מילון מושגים:
קרנל - ליבת מערכת ההפעלה, שמנהלת את החומרה, הזיכרון והתהליכים ומתווכת בינם לבין התוכנות.
Event Viewer - כלי ב-Windows שמציג את יומני האירועים של המערכת והתוכנות, לצורך מעקב ואבחון תקלות.
BitLocker - כלי של Windows להצפנת כוננים שלמים, כדי להגן על הנתונים אם ההתקן יאבד או ייגנב.
תוכנה זדונית - כל תוכנה שנועדה לפגוע במערכת, לגנוב מידע או להשתלט עליה, כמו וירוסים, תולעים וסוסים טרויאנים.
ETL - תהליך של חילוץ נתונים ממקורות, עיבודם והטענתם ליעד כמו מחסן נתונים (Extract, Transform, Load).
ipconfig - פקודת Windows שמציגה ומנהלת את הגדרות הרשת של המחשב, כמו כתובת ה-IP ושער ברירת המחדל.
Ping - פקודה שבודקת אם מכשיר ברשת מגיב ומודדת את זמן התגובה אליו.
SDK - ערכת כלים לפיתוח: אוסף ספריות, כלים ותיעוד שמאפשרים לבנות תוכנה לפלטפורמה או שירות מסוימים.

מעקב אחר הליבה של וונדוס - Kernel ETW - Event Tracing for Windows עם כלי גרפי - Traceview
הליבה (Kernel) של Windows היא הגורם היחיד שמבצע פעולות בפועל עבור כל התוכנות, ולכן מעקב אחריה חושף גם התנהגות חשודה. ההרצאה מציגה את ETW, Event Tracing for Windows, ואת כלי Trace View שקורא את הקבצים שלו.
למה זה חשוב
1. הקרנל כמנהל יחיד: אף תוכנה לא כותבת לדיסק, משדרת ברשת או יוצרת תהליך בלי לבקש זאת מהקרנל. לכן מעקב אחריו תופס גם תוכנות זדוניות, שלא מדווחות בעצמן.
2. ETW: נוצר בשנת 2000 כהרחבה ל-Performance Monitor. זה הממשק הרשמי היחיד לעקוב אחרי הליבה. גם Event Viewer לוקח ממנו אירועים. דרייבר משלך יכול לקרוא את הליבה, אבל מיקרוסופט יכולה לשבור אותו בעדכון, ואילו ETW ממשיך לעבוד.
השלבים העיקריים
1. יצירת Data Collection Set: ב-Performance Monitor בוחרים New Data Collection Set, ובוחרים לעקוב אחרי Event Trace Data ולא אחרי ביצועים או הגדרות. הדוגמה נקראת PracticU DNS ועוקבת אחר שאילתות DNS, כדי לדעת לאן תוכנה מנסה לפנות.
2. פרובידרים: מוסיפים ספקי אירועים. יש כמעט לכל רכיב ב-Windows (Bluetooth, BitLocker, DHCP ועוד). כאן נבחר Microsoft Windows DNS Client. יש גם Microsoft Windows Kernel Process, שיעסקו בו בהמשך כדי לתפוס תוכנה זדונית.
3. Keywords: מסננים את האירועים, למשל רק טעינת קוד חדש (Image). הבחירה יוצרת מסכה מספרית.
4. שמירה: האירועים נשמרים לקובץ .etl בתיקיית Performance Logs, אפשר גם לשדר חי. אפשר גם לכתוב פרובידר משלך.
5. איסוף: מפעילים, מריצים ipconfig /flushdns ואחר כך ping ל-practicu.com כדי לחייב חיפוש DNS. הקובץ נשאר 0 KB כי הכול בזיכרון (באפר). רק אחרי Stop האירועים נשפכים לקובץ, בדוגמה 56,000 בתים.
6. Trace View: כלי גרפי שמגיע עם Windows SDK, בחלק של Windows Performance Toolkit. מוצאים את traceview.exe בגרסת 64 ביט. פותחים בו את הקובץ ורואים את השאילתה והתשובה, באיזה מעבד, תהליך וטרייד ובאיזו שעה.
7. סשן חי: ב-New Log Session בוחרים פרובידר ושם, לשידור חי וגם לקובץ, ואחרי שאילתה ל-google.com מופיע האירוע בתוך כשנייה. הסשן מופיע גם ב-Performance Monitor, כי כל הכלים מסתכלים על אותו API של Windows. ב-Stop הסשן נמחק.
שימו לב
- ההפעלה בלי הרשאות מנהל נכשלה עם Access is denied. צריך להפעיל את Trace View כ-Run as administrator.
- הממשק של Trace View חלש: אין חיפוש ועמודות מסודרות, כי כל פרובידר מגדיר שדות משלו. המרצה לא התרשם ממנו, אבל זה הכלי שמראה מה קורה מאחורי הקלעים בלי דבאגר, וגם עוזר לאבחן איטיות.
בסרטון הבא יוצגו כלים נוספים. כעת אפשר ליצור סשן ETW, לאסוף אירועים ולקרוא אותם ב-Trace View.
השיעור הבא בקורס: מעקב אחר הליבה של וונדוס - Kernel SilkETW

פרקי ההרצאה: מעקב אחר הליבה של וונדוס - Kernel ETW - Event Tracing for Windows עם כלי גרפי - Traceview

  1. 00:00

    מעקב אחרי הקרנל של Windows

  2. 00:58

    הקרנל ככלי לזיהוי תוכנות זדוניות

  3. 01:36

    היסטוריית ETW

  4. 02:33

    ETW כממשק הרשמי לקרנל

  5. 03:27

    יצירת Data Collection Set

  6. 04:01

    הגדרת מעקב DNS ב-Traceview

תמלול ההרצאה: מעקב אחר הליבה של וונדוס - Kernel ETW - Event Tracing for Windows עם כלי גרפי - Traceview

הטקסט המלא של הדקות הראשונות בהרצאה «מעקב אחר הליבה של וונדוס - Kernel ETW - Event Tracing for Windows עם כלי גרפי - Traceview» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:21

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

  3. 00:49

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

  4. 01:14

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

  5. 01:29

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

  6. 01:49

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

  7. 02:15

    אני יכול לעשות פה פלוס ולהגיד לו אחרי מה בדיוק אני רוצה לעקוב, ואמרו בוא נוסיף לזה גם אירועים שקורים בתוך הליבה, עשו לזה תוספת שנקראת Event Tracing for Windows ושימו לב כמה סיישנים יש לנו כברירת מחדל לאחר ההתקנה גם Event Log, Event Viewer של Windows לוקח מפה את האירועים שלו למעשה זה הממשק היחיד החוקי לעקוב

  8. 02:41

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

  9. 03:08

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

  10. 03:25

    בקיצור, זה הממשק שלי, זה העיניים שלי לתוך הליבה של Windows, ושימו לב, גם Wi-Fi נמצא פה, זאת אומרת, כל מיני כלים שמקבלים מידע לגבי המצב של ה-Wi-Fi שלי, יושבים כאן.

  11. 03:39

    אז תראו, כשאני עושה Data Collection Set חדש, הוא שואל אותי האם אני רוצה לעקוב אחרי הביצועים של ה-Windows, לעשות טרייס מעקב אחרי האירועים שקורים בתוך מערכת ההפעלה, כולל קרנל, או לאסוף מידע על הגדרות שיש בווינדוס.

  12. 03:58

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

  13. 04:15

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

  14. 04:31

    אני עושה אד ומחפש פה את ה-DNS. שימו לב, יש לנו פה בלוטוס,

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

ההרצאה הקודמת: גניבת סיסמה מזיכרון המחשב - עם Mimikatz - תרגיל

ההרצאה הבאה: מעקב אחר הליבה של וונדוס - Kernel - SilkETW

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

  • Activity Tracing
  • התקנה של וונדוס 11 Windows
  • פריסה של וונדוס 10 עם Windows Autopilot
  • כלי dnsrecon

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

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