
הטקסט המלא של הדקות הראשונות בהרצאה «אינדיקציה לחדירה - IOC» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם, בהרצאה הזו נדבר על DETECTION, איתור של פריצה, איך אנחנו יודעים שיש לנו פריצה, וזה החלק השני, המעשי יותר, באיתור פרצות לתוך המערכת שלנו. ולמה זה חשוב כל כך?
כי אנחנו רוצים לוודא שהפריצה הזאת לא תחזור על עצמה. אז אנחנו חייבים לגלות איך הם נכנסו אלינו, איך הם חדרו, ועל מה זה השפיע. אז איך אנחנו מתחילים INVESTIGATION, את החקירה שלנו?
והדבר הכי חשוב בחקירה זה indicators of compromise, מה שנקרא IOC, סימנים לחדירה, אינדיקציות לחדירה. מה זה אינדיקציה לחדירה?
זה יכול להיות איזשהו קובץ שהמערכת הזדונית משאירה בארדיסק, זה יכול להיות איזשהו טראפיק לאיזושהי כתובת IP שיודעים ששם יושב CNC, שרת השליטה של האקרים.
אנחנו צריכים לגלות סימני חדירה בדרך הסימנים האלו, מחפש עוד מחשבים שנפגעו זאת אומרת אני מגלה איזשהו סימן לפריצה נניח קובץ בדיסק שהפורץ השאיר מאחוריו אז אני מחפש בכל המחשבים ברשת שלי איפה יש את הקובץ הזה איזה מחשבים נוספים נפגעו כי גיליתי את זה על מחשב אחד ואולי בזמן שישנתי הפורץ הצליח להשתלט על עוד עשרה
מחשבים שונים אז אני רוצה לגלות את כל מי שנפרץ ובשביל זה אני צריך אינדיקציות לחדירה ברגע שאני מזהה איזושהי אינדיקציה אני מחפש במחשבים האחרים לידים חדשים, אינדיקציות נוספות כי אני רוצה להבין את כל התמונה ועל מה זה השפיע על מה היה האימפקט אז אני אוסף מידע ומנתח אותו וככה זה נראה שיש לי סימן ראשוני נניח יוזר התלונן או איזושהי התרעה שקפצה לי במערכת סים אני לוקח
את האינדיקציה לחדירה מוצא איזה מערכות קומפרומיסט איזה מערכות נפרצו אוסף את המידע מהמערכות האלו ומחפש סימנים נוספים כדי לגלות עוד מערכות שנפגעו.
בארגון זה לא מחשב אחד או שרת אחד. בארגון יש מאות מערכות שעובדות במקביל. מערכת של קבצים, מערכת של משכורות, מערכת של איזשהו פרויקט, מערכת ניהול לקוחות, מערכת של חשבוניות, מערכת של הזמנות, מערכת של איזשהו מפעל של קו ייצור כלשהו.
יש הרבה מערכות, הרבה שרתים, לרוב הם גם מחולקים לתתי רשתות. אז זה שמשהו נפגע, זה לא אומר שהכל נפגע. אני צריך לקחת את הסימן המזהה של הפגיעה, של החדירה, ולבדוק בדיוק מי נפגע, לחקור את המערכות שנפגעו, לגלות עוד סימנים, ובעזרת הסימנים החדשים לחקור שוב את כל המערכות
בארגון שלי. אני צריך להבין את התמונה הכוללת. בארגון זה לא כזה פשוט לפרמט מחשב ולהתקין הכל מאפס. אז אני כל הזמן מחפש את ה-IOC, את האינדיקציות לחדירה, ומחפש לידים חדשים.
אני יכול גם לגלות איזשהו טול זדוני, איזשהו כלי זדוני, מלישס טול, כלי זדוני שהאקר ישתמש בו. כי לרוב האקרים לא כותבים את כל התוכנה מאפס, אלא לוקחים איזשהו כלי זדוני ידוע, איזשהו ראט, ומשתמשים בו. אז אם אני אגלה עם איזה כלי הם השתמשו,
סביר להניח שאני גם אגלה איך עוצרים אותו ומונעים אותו, כי בטח אני לא הראשון שתקפו אותי עם הכלי הזה.
אני צריך לגלות ולזהות את כלי התקיפה שלהם. אז IOC, שזה Indicator of Compromise, זה הסימן שלנו לכך שקרה אירוע כלשהו. ואני צריך לתעד אותם. אני צריך לתעד את הכל, כי הולכים להיות מלא סימנים קטנים.
זה יכול להיות כתובת IP שאני חושד ששם מסתתר שרת השליטה של האקרים, כי אני רואה הרבה תקשורת לשם בלי שום סיבה, בלי שהיוזר עושה משהו. זאת אומרת, יוזר לא נוגע במחשב וכל הזמן יש תקשורת לאיזשהו IP שלא אמורה להיות.
אז כנראה שזה איזשהו וירוס שמנסה להתחבר למרכז השליטה שלו. זה מבחינתי IOC, אינדיקציה לחדירה. זה יכול להיות קובץ ב-hard disk, איך אני מזהה קבצים בצורה חד-חד-ערכית, בצורה חד-משמעית, לא רק לפי השם שלו, שמות יכולים להשתנות ויכולים להיות גם אקראיים
אלא לפי hash value. hash value זה ערבול חד-כיווני שאני מכניס לשם את הקובץ ומקבל תוצאה של הערבול הזה כמו md5 והתוצאה הזאת היא ייחודית למידע הזה לתוכן הזה. זאת אומרת שאני בודק את הקובץ לא לפי השם אלא לפי התוכן שלו אבל כדי לא לבדוק את כל התוכן אני מייצר מעין חותמת אישית לקובץ זה נקרא hash ערבול חד-כיווני אולי אני אראה לכם אותו.
נעשה md5 calc, כלקולטור אונליין, אפשר גם בלי אונליין. אז יש לי פה איזשהו מחשבון md5, שזה נקרא hash, ערבול חד-כיווני. חוץ מ-md5 יש לי כל מיני ערבולים.
ככה, דרך אגב, נשמרת סיסמה ב-hard disk, ונניח אני יכול להכניס פה קובץ כלשהו, או שאני יכול להכניס איזושהי מילה. לדוגמה, בואו נכניס את הפסוורט של מיקרוסופט.
אז במקום לשמור קובץ שלם או סיסמה בצורה גלויה שומרים אותה אחרי הערבול שימו לב מה זה הערבול של פסוורד הזה זה הסטרינג הזה זה הערבול הזה תזכרו אותו כי אם אני מוסיף משהו קטן הערבול נהיה שונה לחלוטין שמתם לב שהוא השתנה לגמרי ככה נשמרות הסיסמאות לדוגמה בווינדוס ובלינוקס ואז כשיוזר מכניס שם בסיסמה הסיסמה
שהכנסת כרגע עוברת את הערבול הזה ומשווים אותה מול הערבול ששמור בתוך הhard disk של הווינדוס שלי אז הhash ששמור אצלי בווינדוס משווים אותו מול הhash של הסיסמה שהכנסת כרגע ואם שני הערבולים שווים אז כנראה שהכנסת סיסמה נכונה ואתה יכול לעשות לוגין לווינדוס למה ווינדוס רוצה לשמור
את הערבול החד-כיווני הזה, את הhash הזה, ולא את הסיסמה המקורית? כדי שהאקר לא יוכל לשלוף את הhard disk מהמחשב שלי או לעלות מ-USB, לגשת לקבצים של Windows כשה-Windows לא עובד ולגלות את הסיסמה של היוזר.
כי אם האקר שולף את הארדיס או ניגש אליו דרך-USB הוא יראה רק את הערבול הזה, ואם הוא רואה את הערבול הזה אין דרך מהערבול הזה לחזור חזרה לסיסמה, כי זה ערבול חד-כיווני. דרך אגב, Windows היום במקום MD5 שומר ערבול בטכנולוגיה של שעה.
אבל הרעיון הוא אותו רעיון. אני לוקח נניח שעה 256, עושה ערבול המספר הוא שונה התוצאה של הערבול היא שונה אבל הרעיון אותו רעיון שזה ערבול חד-כיווני חוץ מסיסמאות אני יכול גם להכניס פה קובץ שלם פנימה ועדיין התוצאה תהיה באורך קבוע הערבול הוא תמיד באורך קבוע וכך אפשר לזהות את הקבצים בלי לשמור את כל התוכן שלהם תחשבו שיש לי קובץ ענק אני מכניס את כולו לערבול הזה להאש הזה
מקבל תוצאה קצרה ואם יביאו לי קובץ עם שם אחר אבל עם אותו תוכן אני אכניס אותו לערבול הזה ואני אקבל את אותה תוצאה את אותו האש זאת אומרת לא משנה מה האורך של הקובץ ההאשים הם תמיד באורך קבוע והם מושפעים רק מהתוכן וכך מזהים וירוסים לפי התוכן הזה לפי החתימה האישית של הקובץ בקיצור האש value זה
כמו חתימה של קובץ חתימה אישית זה כמו זיהוי חד משמעי של תוכן של הקובץ אז אני יכול לקחת את הקובץ הזדוני להעביר אותו האש לגלות את ההאש שלו ולבדוק האם יש קבצים אחרים בווינדוסים אחרים שיש להם בדיוק את אותו האש.
אם אני מגלה עוד קובץ עם אותו האש, אני יודע שזה בדיוק אותו קובץ זדוני בלי קשר לשם שלו ובלי לבדוק את כל התווים בפנים. ככה עובדים האנטיווירוסים. העדכונים של האנטיווירוסים למעשה זה עדכונים של האשים זדוניים וזה מה שהאנטיווירוס מחפש.
לחפש את החתימה הדיגיטלית של קובץ זדוני, את ההאש של קובץ זדוני וכך לזהות אותו בין כל הקבצים במחשב. וכמובן שאפשר גם לפי שם קובץ, אבל בהרבה תוכנות זדוניות, בהרבה מיילווירים, השמות של קבצים הם סתם אקראיים, הוא סתם מייצר איזשהו קובץ אקראי, מפעיל אותו וממשיך הלאה.
ואני יכול לחפש בכל המערכת שלי למי יש את ההאשים האלו, וכך לדעת מי נפגע מהווירוס הזה או מהמיילוויר הזה.
ה-IOC, האינדיקטורים, האינדיקציות של פרצה הם כל כך כל כך חשובים, שאפילו עשו להם שפה מיוחדת איך לכתוב אותם. זה נקרא OpenIOC או YARA. למעשה, YARA הזאת זה ממש ממש שפה ידועה, וחוקי YARA, אתם תלמדו גם בהמשך הקורס.
למעשה, החוקים האלו של YARA, התקן הזה, השפה הזאת של YARA, בעזרתה אנחנו כותבים למערכות ניטור שלנו מה לחפש. נניח יוצא מחר איזשהו מיילוור חדש, אז אני מעדכן את המערכות שלי עם חוקי יארה חדשים שיחפשו את ה-IOC הזה.
אנחנו נראה בהמשך. אז-IOC זה סימני פרצה שמתארים אותם בשפת יארה או אופן-IOC, וכשאני מתאר בעזרת יארה את מה אני רוצה שהמערכת תחפש, ה-EDR שלי שכבר מותקן בתחנות עבודה או האנטיווירוס שלי יבדקו את כל המערכות
ויחפשו את האינדיקציות האלו. זה למעשה העדכונים שאנחנו מריצים למערכות אבטחה שלנו. הם מורידים את חוקי היארה ואנחנו גם לבד יכולים להוריד חוק או לכתוב חוק יארה שיתפוס איזה משהו חדש.
ויש כל מיני תוכנות עריכה שעוזרות לנו לכתוב את החוקים האלו, את חוקי היארה. אנחנו בהמשך הקורס ממש נראה את זה. יותר מזה, אנחנו יכולים גם להוריד את חוקי יארה כבר מוכנים מכל מיני third parties, מצד שלישי. מה זה צד שלישי? חברת אנטיווירוס, חברת אבטחת מידע כלשהי, גיט-האב כלשהו, זאת אומרת שמישהו אחר כבר כתב
חוק שתופס איזושהי פריצה ידועה. עכשיו השאלה, איך אני סורק את כל הרשת שלי? תחשבו שיש לי מאות מחשבים או אלפי תחנות עבודה, איך אני בודק? אני לא עובר אחד-אחד, אני יכול להשתמש ב-WMI.
WMI זה תקן שיצא לפני למעלה מ-25 שנה של ניהול Windows מרחוק. WMI הזה הוא קצת מסובך. מה שיותר פשוט זה הפאור של החדש, והפאור של החדש יודע להריץ פקודות על מחשבים מרוחקים בווינדוס.
זו השורת פקודה הזאת, המסך השחור הזה, היום זה מסך כחול, שמריץ פקודות. היה פעם CMD, הדוס הישן, והיום יש את הפאור של החדש, שהוא הרבה יותר טוב, הרבה יותר חזק והרבה יותר נוח מאשר ה-CMD הישן, אבל הם נראים די דומה, הם נראים כמו פקודות שמקלידים, והפקודות האלו שאנחנו מקלידים אפשר להריץ לא רק על המחשב המקומי
אלא גם על מחשב מרוחק. אני מדבר איתכם על Windows. בעולם של לינוקס משתמשים בכלים אחרים כמו SSH. וצריך להיות מאוד מאוד זהירים שהאקר לא יתפוס לנו את הסיסמה של אדמיניסטרטור של פריבילג'ד יוזר, יוזר עם הרשאות גבוהות כי כשאנחנו רוצים להריץ סריקה על כל המחשבים והאקר יושב על אחד המחשבים הוא יראה את החיבור שלנו מרחוק
ויתפוס לנו את הסיסמה של אדמיניסטרטור. זה הטריק הכי חזק של האקר. האקר משתלט על איזשהו מחשב, נהיה אדמיניסטרטור על מחשב אחד ברשת, והוא לא יכול לעבור למחשבים אחרים ברשת, כי הסיסמה שלו או הכוח שלו תופס רק על מחשב אחד, ואז הוא מחכה שהאדמיניסטרטור של כל הרשת יעשה איזושהי בדיקה או יתחבר,
ולאדמיניסטרטור יש highly privileged user, כאילו הרשאות גבוהות, user עם הרשאות גבוהות, והוא יתפוס אותו בחיבור הזה ויגנוב לו את הסיסמה.
בזמן ה-Connection ל-Compromised System, למערכת שנפרצה. Compromise זה משהו שנפרץ. אז הטריק הזה של האקרים לתפוס סיסמאות מתוך קאש, מה זה קאש?
הזיכרון של הווינדוס שלי. זאת אומרת, כשאני מתחבר לווינדוס המקומי שלי, מכניס שם וסיסמה או עושה לוגין, ווינדוס מאחורי הקלעים זוכר את הסיסמה שהקלדתי.
האמת שהוא זוכר את ה"ה" של הסיסמה, הערבון של הסיסמה בזיכרון שלו הוא זוכר את זה בשביל להשתמש בה בחיבורים למקומות אחרים לשרתים אחרים לדוגמה כשהיוזר עושה לוגין בבוקר אחרי זה הוא רוצה להתחבר ולקחת קובץ מאיזשהו שרת ברשת הוא לא צריך להקיש כל פעם שם וסיסמה מחדש למה כי הווינדוס המקומי זוכר את הסיסמה שהוא הקיש בבוקר בזיכרון שלו זה נקרא קאש
של קרדנצ'לס קאש של שם וסיסמה אז כשמנהל רשת מתחבר מרחוק לאיזשהו Windows, יכול להיות שה-Windows שמה יזכור את שם והסיסמה של מנהל הרשת, זה נקרא Cache Credentials, Credentials זה שם וסיסמה, הוא יכניס אותם ל-Cache, והאקר ששולט על מחשב יוכל לשלוף את זה מתוך