נראות, בליינדספוט ופני הבריכה

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

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

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

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

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

הבקרות הגנה ואבטחה שיש בכל סביבה מיועדות לניטור אבטחה של מערכות וסביבות מחשוב, ולכן, מתבססות על טכניקות זיהוי והגנה מגוונות, חלקן מוכרות ואחרות פחות, ולכן לעיתים יש כאלה שכדאי לאמץ אותן וכאלה שאפשר אפילו לוותר עליהן, מדובר על טכניקות שמופיעות בתקריות בשטח וכן בסימולציות תקיפה והגנה. למשל, הפעולות המוכרות של תוקפים שמושיטים יד ובודקים האם יש נוכחות של כלי הגנה מסוים, כמו הפעולות המוכרות של, האם קיים Falcon (אותו Crowdstrike) בנקודת הקצה? או, האם האנטי-וירוס של דפדנר (Defender AV) קיים בנקודת קצה? או במקרה של סביבות ענן, איך ניתן לזהות הסלמת הרשאות בקוברנטיס. 

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

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

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

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

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

בראייה קיימים שני סוגי קולטנים, המהווים את הבסיס למערכות ראייה: קנים ומדוכים (Rods & Cones). אחד אחראי על ראייה ברמות אור נמוכות והם אינם מתווכים ראיית צבעים, ויש להם חדות מרחבית נמוכה. השני, פעיל ברמות אור גבוהות יותר, ומסוגלים לראות צבעים ואחראים על חדות מרחבית גבוהה. בחיי היומיום שלנו נדרשת מערכת הראייה לדינמיות רבה בשל המעברים בין רמות תאורה שונות. ההסתגלות לאור ולחושך שונות זו מזו באופן מהותי. הסתגלות לאור מהירה מאוד, כלומר כשאנו עוברים מחדר חשוך למקום מואר, נראה טוב במהירות רבה. לעומת זאת, ההסתגלות לתנאי חושך איטית הרבה יותר, כלומר כשנעבור מסביבה מוארת לחשוכה יקח פרק זמן ארוך יותר עד שנראה טוב, כלומר עד שהקנים יאפשרו ראייה זו.

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

בעיות הנראות אינם קיימות רק בשטחים מתים, אלא, קיימות בפינות אפלות כמו הסבירות הנמוכה לזהות תוקף שמנסה לבדוק כלי אבטחה שאינו קיים. סביר להניח שאנליסט מכיר את העובדה שתוקפים עושים שימוש ומשלבים PowerShell יחד עם טכניקות ופקודות מול האנטי-וירוס של דפנדר (MDAV), אך מה אם האנטי-וירוס של דפנדר אינו חלק מכלי ההגנה, ובמקום זאת קיימת בקרה והגנה אחרת, האם עדיין מדובר על חלק מתקרית או פוטנציאל כלשהוא, או שנקבל/נבחין בהתראה כוזבת? ובכן, במקרה הזה, לפעולה לא תהיה השפעה, למשל, במקרה של ניצול מודול MP-Preference והאפשרות להגדיר אי הכללות לא ממש יגרום לרישום או התראה כי הרכיב של האנטי-וירוס של דפנדר אינו זמין.

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

בכלי EDR ישנם בליינדספוט רבים, ולא תמיד בקטע הזה של Userland או Kernel Land. אפילו בחלק הפשוט של סיום פרוסס, כלומר אין משהו שווה ערך לזה של Sysmon עם רישום לוג של סיום תהליך. רוב כלי ה EDR כוללים רק טלמטריה של יצירה והבנה של תהליכים, ולכן, יש צורך בגישה וניתוח נוספים כדי לאמת אם התהליך בוצע במלואו, או אם התרחש משהו שמנע מהתהליך להסתיים כרגיל.

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

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

STONE SPLASHING IN WATER

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

השאר תגובה

error: Content is protected !!