התקפת SgxSpectre יכולה להפר נתונים רגישים המאוחסנים במובלעות SGX של אינטל

התקפת Spectre החדשה ביותר המכונה SgxSpectre יכולה לחשוף נתונים רגישים המאוחסנים במובלעות SGX בסיכון

SgxSpectre - עוד מתקפת Spectre המהווה סיכון לנתונים רגישים

פגם במעבד Spectre-Meltdown[1] זוהה בתחילת 2018 מהווה אתגר יותר ממה שציפו לו על ידי מיקרוסופט, אינטל וענקיות טכנולוגיה אחרות. לא רק שהיא הצליחה להתרחב משבבי אינטל ו-AMD ל-Skylake, Kaby Lake, Coffee Lake; זה אפשר להאקרים ליזום מסעות פרסום רבים להפצת תוכנות זדוניות[2] והתקפות מבוססות תוכנה.

בתחילת מרץ 2018, קבוצה של שישה חוקרי IT מאוניברסיטת אוהיו סטייט זיהתה גרסה חדשה של מתקפת ספקטר המכונה בשם SgxSpectre, שניתן להשתמש בו לפיצוח מובלעות הרחבות Software Guard (SGX) של אינטל אשר אחראיות לבידוד של רגישות רכיבים. למעשה, הנתונים המוגנים על ידי המובלעות הללו הם כנראה הרגישים מכולם מכיוון שרכיבי מערכת ההפעלה אינם מורשים לקיים אינטראקציה עם הנתונים המוגנים במובלעת.

קרוליין טריפל ודניאל לוסטיג, חוקרים מאוניברסיטת פרינסטון, ומרגרט מרטונוסי מ-Nvidia חזה את האפשרות של התקפות כאלה והתווה את התרחיש בעבודה מדעית שקוראים לו "MeltdownPrime ו-SpectrePrime: ניצול התקפות מסונתזות באופן אוטומטי. פרוטוקולי קוהרנטיות מבוססי אי תוקף".[3]

אלו הן הפגיעויות החדשות ביותר של Meltdown ו-Spectre שעלולות להסתיים עם תקיפה של נתונים רגישים.

לפגיעויות קודמות של Meltdown ו-Spectre לא הייתה גישה לנתונים רגישים המוגנים על ידי SGX

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

תוצאות הלוואי של התקפות Spectre ו-Meltdown הקודמות על ה-SGX לא היו ברורות. עם זאת, החסינות של מובלעות SGX עוררה שאלות רבות מההתחלה. התברר שאף אחת מהפגיעויות הללו לא מציגה תכונות המאפשרות לפצח את הגנת SGX, אבל כנראה שהאקרים מכוונים לנתונים בתוך המובלעות. זו הסיבה ש-SgxSpectre התפתח.

לפי חוקרי הפגיעות של SgxSpectre,[4] הפגיעות מאפשרת ניצול של "מצב המירוץ בין הפניות הזיכרון המוזרקות, המבוצעות באופן ספקולטיבי, אשר מובילים לעקבות מטמון הניתנות לצפייה בערוץ צדדי, והשהייה של רזולוציית הענף." נכון לעכשיו, הפגיעות יכולה להשפיע על Intel SGX, SDK, Rust-SGX ו-Graphene-SDX.
המערכת יכולה להיות מושפעת כאשר דפוס קוד ספציפי בספריות תוכנה מופעל. התוקף שמכוון למידע השמור בתוך מובלעות משתמש בביצוע ספקולטיבי ומבצע חיזוי של קוד מובלעת על ידי חיפוש אחר וריאציות קטנות של גודל המטמון. כפי שהסבירו החוקרים,

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

אינטל פרסמה כלי סריקת פגיעות

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

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

ספקולציות מוגבלות בענף עקיף (IBRS) הוא אחד מהתיקונים המיוצגים על ידי אינטל. הוא מתייחס ל- Spectre Variant עם אספקת מיקרוקוד מותאם. עם זאת, תיקון זה אינו מכוון לפגיעות SGX SDK.
המועד האחרון לתאריך שחרור התיקון של SgxSpectre הוא 16 במרץ 2018. מפתחי אפליקציות יצטרכו לשנות את גרסת ה-SDK הישנה יותר עם זו שאינטל עומדת לשחרר לאפליקציות מבוססות SGX.

אלה שרוצים לבדוק אם המחשבים האישיים שלהם מכילים קודים פגיעים, מומחים יצרו כלי לסריקת פגיעות,[5] אשר מאמת תוכניות מובלעת ובודקת דפוס קוד. במקרה שבו יתגלו ניצול של SgxPectre, המשתמש יקבל אזהרה ויתבקש להתקין את ערכת הכלים שפותחה על ידי אינטל יחד עם ערכת כלים מיושנת לפיתוח תוכנה עבור ספקי יישומי SGX.