מהפיכה בהגנת סייבר

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

מהפיכה בהגנת סייבר

אחד האיומים המטרידים ביותר כיום ארגונים ביטחוניים, ממשלתיים ומסחריים בעולם הסייבר הוא 'איומים מתמידים מתקדמים', או בשמם המוכר יותר – Advanced Persistent Threat) APT). אלו התקפות במרחב הקיברנטי שנועדו לפגוע במטרה מאד ממוקדת או לגנוב מידע מסוים. זאת, בשונה מסוגי התקפות אחרים שנועדו לפגוע במספר רב של מטרות כמו וירוסים או רוגלות למיניהן.

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

כל האמצעים כשרים

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

במתקפת APT, כמו במלחמה, כל האמצעים כשרים. אחרי שהתוקף הרכיב תמונת מודיעין של סביבת המטרה, הוא פונה לייצור כלי הנשק. בעולם ה-APT מדובר לרוב על חולשות מסוג "יום האפס" (Zero Day/0Day). אלו חולשות במערכות הפעלה או תוכנות בהן משתמשים בסביבת היעד ושאינן ידועות לאף אחד פרט לתוקף. זו יכולה להיות חולשה במערכת "חלונות", חבילת האופיס, קורא קבצי ה-PDF, או התוכנה לניהול פרויקטים שהארגון פיתח לבד.

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

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

"במנגנונים אחרים, כמו אנטי וירוס למשל, יש אין סוף חתימות. בתוך 30 שניות אפשר לייצר חתימה חדשה של מה שאתה רוצה, והמצב הוא שחברות אבטחת המידע הגדולות מוצאות כ-70 אלף חתימות ביום, כל אחת. במתקפות מסוג זה יש כ-15 טכניקות ועוד כ-90 נגזרות שלהן. "מדובר על טכניקות מורכבות שמרביתן נתמכות חומרה. דוגמא להגנה בפני טכניקת פריצה הוא מנגנון ה-Address space layout randomization (ASLR) שפותח בשנת 2001. מדובר על מנגנון הגנה שמערבל את קטעי הקוד של התוכנה בזיכרון. למה זה טוב? כי אם התוקף מצפה שהזיכרון יהיה מסודר בצורה מסוימת כדי ליישם את הפרצה, הערבול של מיקום החלקים מקשה עליו. כדי לירות, אתה צריך לדעת איפה המטרה שלך".

מנגנון נוסף שאמור לעכב את ההאקר הוא Data Execution Prevention) DEP). התפקיד שלו לוודא שחלק בזיכרון של התוכנה שלא הוכנס מראש, לא יוכל לרוץ. בעבר, כדי להריץ קוד זדוני ההאקר היה יכול לדרוס את הקוד הקיים. אחר כך המציאו זיכרון שמאפשר קריאה בלבד, אבל ההאקר היה מכניס קוד שלו לזיכרון כמו תמונה או אלמנט אחר וקופץ אליו כדי להריץ את הקוד בזכרון. ואז המציאו את DEP בתחילת שנות ה-2000 כדי למנוע הרצת קוד לא מורשה. אחת הבעיות עם המנגנון הזה קשורה לעובדה ששפות תכנות כמו ג'אווה למשל לא יכולות לעבוד עם זה. הסיבה לכך היא כי ג'אווה מייצרת קוד תוך כדי ריצה.

מנטרים את כל הצמתים

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

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

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

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

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

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

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

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

"הוא גם יכול לגנוב את המוצר שלנו לפענח אותו ולפתח סט של טכניקות שהמוצר שלנו לא יזהה, ולקוות שאף אחד לא יפרסם אותן. לכמה ממשלות בעולם יש יכולת לממן את זה. בכל מקרה, הפתרון שלנו הופך את התקפת ה-APT למאוד יקר עבור התוקף". נכון לכתיבת שורות אלו, דיסקין מדגיש כי הפתרון של cyvera מיועד לגופים גדולים, כולל כאלו ממגזר הפיננסים, גופים ממשלתיים וחברות מסחריות גדולות. המוצר עובד על סביבות 'חלונות', מחשבי מקינטוש שולחנים ויש גם גרסת פיתוח לסביבת אנדרואיד שטרם הגיע לבשלות מסחרית. כמו כן, החברה שותפה של מקאפי בתוכנית ה-"security innovation alliance" שמעודדת פריסה של מוצרי אבטחה מתקדמים.

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

אולי יעניין אותך גם