CacheWarp: פגיעות המאפשרת התחמקות ממנגנון הגנת SEV במעבדי AMD

פגיעות

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

לאחרונה החדשות הוכרזו על ידי חוקרי CISPA, על שיטת התקפה חדשה CacheWarp לפגיעה במנגנון האבטחה של AMD SEV משמש במערכות וירטואליזציה כדי להגן על מכונות וירטואליות מפני הפרעות של ה-Hypervisor או מנהל המערכת המארח.

לגבי הפגיעות (CacheWarp), החוקרים מזכירים זאת מבוסס על שימוש בפגיעות (רשום תחת CVE-2023-20592) נגרמת על ידי תקלה במטמון במהלך ביצוע הוראות מעבד INVD, בעזרתם ניתן להשיג אי-התאמה של נתונים בזיכרון ובמטמון ולעקוף מנגנוני שמירה על שלמות זיכרון המכונה הוירטואלית, המיושם על בסיס הרחבות SEV-ES ו- SEV-SNP.

השיטה המוצעת מאפשר לתוקף עם גישה ל-hypervisor לבצע קוד של צד שלישי ולהסלים הרשאות במכונה וירטואלית המוגנת על ידי AMD SEV. הפגיעות משפיעה על מעבדי AMD EPYC מהדור הראשון ועד השלישי.

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

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

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

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

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

למשל, חוקרים הדגים את האפשרות להשתמש בשיטת CacheWarp לביצוע התקפת Bellcore על יישום האלגוריתם RSA-CRT בספריית ipp-crypto, מה שאיפשר לשחזר את המפתח הפרטי על ידי החלפת שגיאות בעת חישוב מפתח דיגיטלי.

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

בעוד עבור הדור הראשון והשני של AMD EPYC (זן 1 וזן 2), לא מסופקת הגנה, מאחר שמעבדים אלה אינם תומכים בתוסף SEV-SNP, המספק בקרת שלמות עבור מכונות וירטואליות. הדור הרביעי של מעבדי AMD AMD EPYC "Genoa" המבוססים על מיקרו-ארכיטקטורת "Zen 4" זה לא פגיע.

חוץ מזה, הדור השלישי של מעבדי AMD EPYC הציג הרחבה נוספת, SEV-SNP (Secure Nested Paging), אשר מבטיח פעולה בטוחה של טבלאות דפי זיכרון מקוננות. בנוסף להצפנת זיכרון כללית ובידוד יומן, SEV-SNP מיישם אמצעים נוספים להגנה על שלמות הזיכרון על ידי מניעת שינויים ב-VM על ידי ה-Hypervisor. מפתחות ההצפנה מנוהלים בצד של מעבד PSP (Platform Security Processor) נפרד המשולב בשבב, המיושם על בסיס ארכיטקטורת ARM.

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


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.