EntrySign משפיע גם על מעבדי AMD Zen 5 ומסכן את אימות המיקרוקוד.

לוגו הפגיעות של EntrySign

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

מה בתחילה זה נראה כמו באג מוגבל לדורות Zen 1 עד Zen 4, כעת הוא מתרחב לשבבים עדכניים כמו Ryzen 9000, EPYC 9005, Ryzen AI 300 ו-Ryzen 9000HX. פגם זה מאפשר, בתנאים מסוימים, לשנות את מיקרוקוד המעבד על ידי עקיפת מנגנון אימות החתימה הדיגיטלית, עם השלכות חמורות על האבטחה של מערכות וירטואליות.

שורש הבעיה זה בתוך ה שימוש לא הולם באלגוריתם CMAC במהלך תהליך אימות המיקרוקוד. AMD משתמש באופן מסורתי במפתח RSA פרטי לחתום דיגיטלית על התוכן של עדכונים אלה, ומפתח ציבורי הכלול בתיקון כדי לאמת את האותנטיות של המיקרוקוד בזמן הטעינה. עם זאת, ה-hash המפתח הציבורי שאמור להבטיח שלמות זו נוצר באמצעות AES-CMAC, MAC קריפטוגרפי, שבניגוד לפונקציית Hash חזקה, אינו מציע שום ערובות מפני התנגשויות.

העיצוב הזה, נוסף לעובדה ש-AMD השתמשה במפתח הצפנה נפוץ עבור כל המעבדים שלך מאז Zen 1, אפשרה לחוקרים לחלץ את המפתח מכל מעבד מושפע ולהשתמש בו כדי לתפעל תיקוני מיקרוקוד במחשבים אחרים. באופן מפתיע, מפתח זה תואם דוגמה ציבורית של שיטות הצפנה NIST SP 800-38B, המדגים שימוש רשלני בשיטות הצפנה טובות.

מיקרוקוד מזויף, חתימות תקפות

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

תהליך זה הוקל על ידי כלי ניתוח כגון Zentool, סט של כלי עזר בקוד פתוח המאפשר לך ללמוד את המיקרוקוד של AMD ולהכין תיקונים מתוקנים. כדי שסוג תקיפה זה יתממש, על התוקף להיות בעל הרשאות Ring 0, כלומר גישה לרמה הגבוהה ביותר של מערכת ההפעלה, דבר שאפשרי בסביבות וירטואליות אם ה-Hypervisor נפגע או באמצעות תצורות לא מאובטחות של טכנולוגיות כגון VT-x או AMD-V.

השפעה על AMD SEV ו-Secure Virtualization

מעבר למניפולציה של מיקרוקוד, EntrySign מהווה איום ישיר על AMD SEV (Secure Encrypted Virtualization) וההרחבה שלה SEV-SNP (Secure Nested Paging), טכנולוגיות שנועדו להבטיח את השלמות והסודיות של מכונות וירטואליות גם מול התקפות מה-Hypervisor או המערכת המארח. פגיעות זו מאפשרת להתערב ברגיסטרים של מעבדים מוגנים, לשנות טבלאות דפים מקוננות ולשנות את ההתנהגות של מערכות אורחות, מה שפוגע באבטחתן ברמה עמוקה.

אמצעי תגובה וצמצום של AMD

מול המצב הזה, AMD החלה להפיץ עדכוני מיקרוקוד שמתקנים את הבאג.או, למרות שבמערכות המשתמשות ב- SEV-SNP יש צורך גם לעדכן את הקושחה של מודול SEV, הדורשת עדכון BIOS. החברה כבר שלחה חבילה חדשה ליצרנים נקרא ComboAM5PI 1.2.0.3c AGESA, אך ההערכה היא שתיקונים סופיים עשויים לקחת שבועות או אפילו חודשים עד שהם יהיו זמינים למשתמשי הקצה.

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

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