הבאג הקריטי במעבדי אינטל

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

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

בשביל להסביר לגבי הבאג, נתחיל בדברים בסיסיים: אפליקציות בד"כ רצות במצב שנקרא User Mode ויש מצב שהוא Protected Mode שאפליקציות רגילות לא מגיעות אליו למעט כשצריך גישה לציודים כמו דיסק, רשת, כרטיס גרפי ועוד. במצבים כאלו, בד"כ האפליקציה פונה למערכת הפעלה, מערכת ההפעלה פונה ל-Protected Mode, מבוצעים הדברים שצריך להתבצע ומיד זה חוזר ל-User Mode. זו הסיבה, אגב, שבמקרים לא מעטים על מנת לעדכן קושחה, צריך לעשות Boot ל-DOS כי מערכת ההפעלה חוסמת אפשרות גישה ישירה לציוד למעט במקרים מסויימים המורשים ע"י היצרן.

מה שהבאג מאפשר הוא שימוש בטריקים מסויימים (שעדיין לא פורסמו) על מנת לאפשר לאפליקציה זדונית (שיכולה אגב להיכתב בכל שפה) לגשת לזכרון של ה-Protected Mode לחלקים שהיא כלל לא אמורה לגשת. תחשבו שב-VM (או שרת ללא Hypervisor) אפליקציה כזו יכולה לקרוא סיסמאות, תעודות, קוד שנמצא בזכרון של תוכנות אחרות ושלל דברים נוספים שלא אמורים להיות נגישים לאפליקציה.

הבאג עצמו – הוא באג חומרה, כלומר תיקון דרך מיקרו-קוד לא אפשרי במקרים כאלו והוא משפיע על מעבדים לשרתים, דסקטופ, מחשבים ניידים וגם Appliances. בקיצור – כל מה שיש בו מעבד אינטל מהעשור האחרון בערך, חשוף – ובתרגום לאנשי IT: גשו לחווה שלכם, תסתכלו על השרתים שלכם, 90% מהם – חשופים.

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

איזה מחיר? בביצועים. תלוי מה האפליקציות שאתם מריצים ולאיזה ציוד הם ניגשים – הביצועים ירדו בין 3 ל-30 אחוז אחרי התקנת הטלאי (הטלאי יהיה חובה בכל מערכות ההפעלה). במילים אחרות – אם אתם לדוגמא מריצים מערכת מורכבת נניח על 10 מכונות VM, אחרי התקנת הטלאי ועל מנת לקבל את אותם ביצועים – תצטרכו בין VM ל-3 VM נוספים. ישנם דברים שאינם מושפעים והם יותר קשורים למכונות דסקטופ או מחשבים ניידים כמו משחקים, קידוד וידאו ועוד מספר דברים. הפרטים יתבהרו יותר בשבוע הבא, אבל הנה דוגמאת גרף של מעבד דסקטופ חדש (משפחת CofeeLake, מעבד i7 8700K) בהשוואה למעבד i7 מלפני 2 דורות: ה-i7 6800K (תודה לאתר phoronix.com על הגרפים)

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

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

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

Comments

comments

13 תגובות בנושא “הבאג הקריטי במעבדי אינטל”

  1. האם

    Hypervisor באמת ימנע את זליגת הזיכרון?

    הרי הEPT ש(גריסתה של אינטל לכתובת זיכרון בשכבה עילית)

    אינו מוגן מהצפות זיכרון וניגש לקרנל גם כן.

    1. ה-Hypervisor לא מריץ אפליקציות, הוא מריץ רק מכונות VM, לכן הבעיה תימצא בתוך מכונות ה-VM ולא בשכבה של ה-Hypervisor

       

  2. ה-Hypervisor לא מריץ אפליקציות, הוא מריץ רק מכונות VM, לכן הבעיה תימצא בתוך מכונות ה-VM ולא בשכבה של ה-Hypervisor

  3. https://www.cyberark.com/threat-research-blog/boundhook-exception-based-kernel-controlled-usermode-hooking/

    סייברארק גילו את זה לפני כחודשיים כפי שניתן לראות בקישור
    תגובת מיקרוסופט מובאת שם:
    We know that BoundHook does not meet Microsoft’s bar to be considered a vulnerability, as machine administrator rights are already compromised. Microsoft’s response on receiving responsible notification of a similar issue from CyberArk (GhostHook) was as follows:
     
    “We have completed our investigation of this issue and have found that it is not a vulnerability but a technique to avoid detection once the machine is already compromised. Because it’s a post-exploitation technique it doesn’t meet the bar for servicing in a security update but we will consider fixing it in a future version of Windows.”

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

  4. הגרף יכול קצת להטעות בגלל שלא ציינת את שאר ההבדלים בין המחשבים שנבדקו כמו באתר phoronix:

    The i7-8700K system was using a Samsung 950 PRO NVMe SSD while the i7-6800K system was using a slower SATA 3.0 Toshiba TR150 SSD.

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

  5. יש דיווחים סותרים שאומרים שגם amd וarm מושפעים מהבאג. אותי כמובן מעניין אם ה 1700x שלי בטוח:)

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *