התקפה חדשה של NetSpectre אינה מחייבת את הקורבן להוריד או להריץ קוד זדוני

בִּטָחוֹן / התקפה חדשה של NetSpectre אינה מחייבת את הקורבן להוריד או להריץ קוד זדוני

יציאות מכונת NetSpectre מפציצות כדי להשיג כניסה

4 דקות קריאה

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



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

NetSpectre פשוט יפציץ את נמלי הרשת של מכונה עד שהיא תמצא דרך להשיג את יעדיה.



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



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



במאמר המחקר, האקדמאים הצליחו להשיג עד 60 ביט / שעה עם וריאציה מיוחדת של NetSpectre הממוקדת בנתונים המעובדים באמצעות מודול AVX2 של המעבד, הספציפי למעבדי אינטל.

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

המתקפה החדשה של NetSpectre קשורה לפגיעות Spectre V1 (CVE-2017-5753) שחוקרי גוגל חשפו מוקדם יותר השנה (2018). המשמעות היא שכל המעבדים שעלולים להיות מושפעים מספקטר V1 נחשבים גם הם כ- NetSpectre, אם הוא נפרס עם קושחת מערכת הפעלה ומעבד תקינים.



כרגע ישנן שתי גרסאות התקפה עבור NetSpectre: חילוץ נתונים ממערכת היעד, ושבירה מרחוק של ASLR (אקראי על פריסת שטח) במערכת היעד.

השתלשלות האירועים להתקפה מהסוג הראשון הולכת כך:

  1. טמא את מנבא הענף.
  2. אפס את מצב האלמנט המיקרו-אדריכלי.
  3. דליפה קצת לאלמנט המיקרו-אדריכלי.
  4. חשוף את מצב האלמנט המיקרו-אדריכלי לרשת.
  • בשלב 1, התוקף מטעה את מנבא הענף של הקורבן כדי לבצע התקפת ספקטר. כדי לאבד את מנבא הענף, התוקף ממנף את גאדג'ט הדליפה עם מדדים תקפים. המדדים התקפים מבטיחים כי מנבא הענף לומד לקחת תמיד את הענף, כלומר, מנבא הענף משער שהתנאי נכון. שים לב כי שלב זה מסתמך רק על גאדג'ט הדליפה. אין משוב לתוקף, ולכן אין צורך לאפס או לשדר את המצב המיקרו-אדריכלי.
  • בשלב 2, התוקף צריך לאפס את המצב המיקרו-אדריכלי כדי לאפשר קידוד של סיביות שהודלפו באמצעות אלמנט מיקרו-ארכיטקטוני. שלב זה תלוי מאוד באלמנט המיקרו-ארכיטקטוני המשמש, למשל, בעת מינוף המטמון, התוקף מוריד קובץ גדול מהקורבן; אם משתמשים ב- AVX2, התוקף פשוט ממתין ליותר מאלפית שנייה. לאחר שלב זה, כל הדרישות מתקיימות כדי לדלוף מעט מהקורבן.
  • בשלב 3 התוקף מנצל את הפגיעות של ספקטר כדי לדלוף מעט סיבית מהקורבן. כאשר מנבא הענף מוטעה בשלב 1, מתן אינדקס מחוץ לתחום לגאדג'ט הדליפה יפעיל את נתיב התושבים וישנה את האלמנט המיקרו-אדריכלי, כלומר, הסיבית מקודדת באלמנט המיקרו-אדריכלי.
  • בשלב 4, התוקף צריך להעביר את המידע המקודד דרך הרשת. שלב זה תואם את השלב השני של מתקפת הספקטר המקורית. התוקף שולח חבילת רשת שמטופלת על ידי גאדג'ט השידור ומודד את הזמן משליחת החבילה עד להגעת התגובה.

שיטת התקפה מס '2: שבירה מרחוק של ASLR

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

אמצעי נגד ספקטר

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

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

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

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