התוכן הזה עודכן לאחרונה בספטמבר 2024, והוא מציג את המצב הקיים במועד כתיבתו. מדיניות האבטחה ומערכות האבטחה של Google עשויות להשתנות בעתיד, מכיוון שאנחנו כל הזמן פועלים לשיפור ההגנה על הלקוחות שלנו.
ארכיטקטורת האבטחה של חומרת Titanium משמשת כבסיס לשירותים של Google, והיא הבסיס להרבה אמצעי נגד בתחום האבטחה בתשתית של Google. חומרת Titanium כוללת מיקרו-בקרים לאבטחה, מתאמי חומרה ומעבדים להעברת עומסי עבודה, שפותחו במיוחד כדי לטפל בווקטורים ספציפיים של תקיפות בתשתית של Google.
חומרת Titanium היא החידוש האחרון באבטחת התשתית המקיפה של Google, שתמיד מתפתחת, ועוזרת להגן על השלמות, הסודיות והזמינות של נתוני המשתמשים. החומרה של Titanium מבוססת על תשתית כמו כרטיסי הורדת עומס מהחומרה לצורך הצפנה, שמספקים הצפנה בזמן ההעברה ומיקרו-שירותים פנימיים שמספקים הצפנה של נתונים במנוחה.
במסמך הזה מוסבר איך רכיבי החומרה של Titanium פועלים יחד כדי ליצור ארכיטקטורת אבטחה שעוזרת להגן על שטח הפנים הפיזי של מערכות Google מפני התקפות, ולצמצם את האיומים על נתוני הלקוחות. במסמך הזה מתואר גם איך חומרת Titanium מאפשרת אמצעי בקרה ספציפיים לאבטחה בשכבת התוכנה, איך הארכיטקטורה התפתחה מעבר להעברות ראשוניות של הצפנה לחומרה, ואילו איומים בעולם האמיתי ארכיטקטורת האבטחה של חומרת Titanium נועדה לצמצם בבסיס הלקוחות והפריסות של Google.
ארכיטקטורת אבטחת חומרה Titanium
ארכיטקטורת אבטחת החומרה של Titanium נועדה להגן מפני מגוון תרחישים ושחקנים בזירת האיומים. בתרשים הארכיטקטורה הבא מוצגים הרכיבים העצמאיים של Titanium שמשתלבים זה בזה.
ארכיטקטורת האבטחה של חומרת Titanium כוללת את הרכיבים הבאים:
- Caliptra root of trust for measurement (RTM): עוזרת לאכוף את היקף האבטחה לכל חבילת סיליקון. Caliptra RTM מספק אימות ומזהה ייחודי לשירותים קריפטוגרפיים בסיסיים.
- Titan chip RoT: ממוקם בין ה-boot flash של הפלטפורמה לבין מכשירי האתחול העיקריים שלה, כמו baseboard management controller (BMC), platform controller hub (PCH) ומעבד. שבבי Titan מספקים שורש מהימן (RoT) מבוסס-חומרה ועמיד פיזית בפני ניסיונות שינוי, שעוזר לבסס זהות חזקה. שבבי Titan עוזרים גם באישור קוד ובביטול שלו במכונות, בכרטיסים או בציוד היקפי.
- מעבד להעברת נתונים (TOPS) של Titanium: מספק אמצעי בקרה קריפטוגרפיים שעוזרים להגן על הסודיות והשלמות של נתונים במצב מנוחה ונתונים בזמן העברה.
- לוחות אם בהתאמה אישית: מספקים עמידות בקנה מידה גדול מפני התקפות מניעת שירות (DoS) מתוכנות פגומות או זדוניות, וגם הגנה מפני התקפות פיזיות. לדוגמה, בתרשים, חבילת השבבים ו-Titan RoT נמצאים על לוח אם מותאם אישית, שהוא נפרד מלוחות האם המותאמים אישית של Titanium TOP או מלוחות האם של תשתית אחרת.
- Confidential Computing enclaves: עוזרות לאכוף בידוד מפני הרשאות אדמיניסטרטיביות של Google, לשפר את הבידוד מפני דיירים אחרים ולהוסיף יכולת אימות באמצעות אישור. אימות יכול להבטיח שהסביבה לא שונתה.
- שירותים אזוריים עמידים בכשלים בבק-אנד: עוזרים למנוע הסלמה של הרשאות בשירותים, באזורים או מגישת אדמין.
בתרשים, תשתית אחרת מתייחסת לרשתות ולגיבוי של אחסון בקצה העורפי.
עקרונות התכנון של ארכיטקטורת האבטחה של חומרת Titanium
רכיבי החומרה של Titan והאינטראקציות שלהם מפותחים על סמך העקרונות הבסיסיים הבאים:
אין נקודת כשל בודדת: הארכיטקטורה של Google מתוכננת כך שלא יהיו נקודות כשל בודדות, כמו רכיבים בודדים שנושאים בעומס עם כמה תפקידים. במאמר בנושא בניית מערכות מאובטחות ואמינות מוסבר למה חשוב להימנע מנקודות כשל בודדות. העיקרון הזה מיושם בכל התשתית הפיזית שלנו, בכל האזורים, ואפילו ברמת הסיליקון שבשבבים. העמידות הזו בתשתית הגלובלית שלנו עוזרת לשמור על הנתונים של הלקוחות בצורה בטוחה וזמינה.
לדוגמה, מיגרציה פעילה עם Confidential Computing עוזרת לשמור על הזיכרון המוצפן במכונות מארחות נתמכות. מיגרציה פעילה עוזרת לוודא שמכונה וירטואלית שפועלת במשך זמן רב לא תהיה נקודת כשל יחידה בגלל אירועי תחזוקה או תגובה לפגיעויות.
ההיקף הוא חבילת הסיליקון: מכיוון שמערכת שרתים מכילה כמה מערכות נפרדות על שבב שמחוברות זו לזו, הארכיטקטורה שלנו לא נותנת אמון באופן בסיסי בכל המחברים, המארגים, המכלולים של לוחות המעגלים המודפסים (PCBAs), העקבות של ה-PCBA והכבלים. הפרדת רכיבים מועילה למודולריות, אבל היא יכולה גם להפוך לנקודת חולשה אם היא מספקת ליריבים יעדים מוגדרים היטב שמהם הם יכולים לרגל אחרי נתוני טקסט פשוט. הנתונים בחבילת הסיליקון עצמה מוצפנים ומאומתים על ידי נכסים קריפטוגרפיים פרטיים בתוך החבילה.
העברת ההיקף אל הסיליקון עצמו עוזרת למזער את האמון המרומז. העיקרון הזה מתייחס לאיומים על סודיות הנתונים שמתרחשים ככל שתנאי ההגשה של מרכזי הנתונים הופכים מגוונים יותר. לדוגמה, הגדרת הגבולות בחבילת הסיליקון עוזרת להתמודד עם איומים מפעולות חומרה לא מורשות.
גישת אפס אמון וחלוקת הסיכון לתאים: אמצעי בקרה מרובי-צדדים על פעולות אדמיניסטרטיביות עוזרים להבטיח שאף חשבון של עובד (או חשבון של עובד שנפרץ) לא יוכל לגרום באופן חד-צדדי לאיומים שמתוארים במסמך הזה. הארכיטקטורה מפרידה בין השירותים לשכבות ולאזורים כדי ליצור חלוקה לתאים ולצמצם את הסיכון. גם במקרה של אזורים מבודדים, שבדרך כלל מושרשים בחומרה, הארכיטקטורה מתחשבת באיתור של נקודות חולשה בחומרה ובצורך בתיקון שלהן בזמן שהרכיבים ממשיכים לפעול.
לדוגמה, אם תוקף יפגע בזדון בהתנהגות של שבב בתוך מערכת פעילה שמריצה עומסי עבודה של לקוחות במרכזי הנתונים שלנו, הארכיטקטורה מתוכננת לזהות ולבודד את השבב שנפגע. אחרי זה אפשר להוציא את המכונה הזו משימוש. גם אם המכונה לא מושבתת, התוקף צריך לעבור עוד גבולות של אמון ולפרוץ לכמה פרטי כניסה כדי להתקדם לרוחב ולהשיג השפעה על מערכות, משתמשים או אזורים נוספים.
טכנולוגיות בידוד ודומיינים עצמאיים של כשלים עוזרים להגביל את האזור שנפגע במקרה של פגיעה באבטחה. הדומיינים והטכנולוגיות האלה מוסיפים נקודות בקרה טבעיות לזיהוי, ומגבילים את כמות המורכבות הנוספת שצריך להוסיף.
מידע נוסף על ההטמעה של מודל אבטחה של אפס אמון זמין במאמר BeyondProd.
אבטחה שקופה: Google משקיעה במגוון מאמצי שקיפות, כולל קוד פתוח, חשיפה אחראית של מחקרים וממצאים ושיתוף פעולה עם מערכת האקולוגית של יצרני חומרה. התשתית הגלובלית של Google פועלת לפי העיקרון של קרקהוף, שלפיו מערכת קריפטוגרפית צריכה להיות מאובטחת, גם אם כל מה שקשור למערכת, חוץ מהמפתח, הוא ידע ציבורי.
לדוגמה, אנחנו תורמים לפרויקטים של קוד פתוח ומשתמשים בהם בתכנוני החומרה ובתוכנות האבטחה שלנו. בטבלה הבאה מתוארים חלק מהפרויקטים של קוד פתוח שאנחנו תורמים להם ומשתמשים בהם.
פרויקט קוד פתוח תיאור רכיב טיטניום בשימוש בספריות הצפנה FIPS 140-3 ברמה 1
BoringSSL
משמשת בשורשי מהימנות (RoT) ברמת הסיליקון
Caliptra RTM
משמש ב-RoT עבור שבב בארכיטקטורת מערכת
צ'יפים של Titan
משמש ל-fuzzing של ליבת מערכת ההפעלה בהנחיית כיסוי
מערכות הפעלה של מכונות וירטואליות של משתמשים ושל מארחים ברמה 0
בשימוש בספריות הצפנה FIPS 140-3 ברמה 1
מעבד Titanium Offload
הגנה פיזית ולוגית לעומק: Google מסתמכת על אבטחה פיזית של מרכזי נתונים כדי להגן על ההשקעות שלנו ועל המערכות שלנו. אמצעי הבקרה האלה הם שכבת הגנה ראשונית, ולכן אנחנו משקיעים בכוונה באמצעי בקרה לוגיים נוספים כדי לחזק את המערכות שלנו מפני איומים פיזיים. Titanium מוסיף להגנה המעמיקה שלנו על ידי הוספת חלוקה לתאים בחומרה שלנו, שמספקת הגנות נוספות מפני איומים ספציפיים על התשתית.
לדוגמה, במרכזי הנתונים שלנו יש גלאי מתכות שיכולים לזהות בצורה מדויקת ניסיונות להוצאת נתוני אמצעי אחסון. עם זאת, אסטרטגיית ההצפנה של הנתונים שלנו במנוחה מתוכננת בכוונה כך שלא תסתמך על שמירה של מדיה פיזית. אמצעי הבקרה הלוגיים והפיזיים האלה הם שכבות עצמאיות ומשלימות.
אמצעי הבקרה המשולבים שלנו לאבטחה פיזית ולוגית עוזרים לנו לשמור על ערנות מפני איומים פנימיים ולהגן על הסודיות של נתוני המשתמשים שלנו.
יתרונות האבטחה של רכיבי הארכיטקטורה של Titanium
בטבלה הבאה מודגשים כמה יתרונות חשובים של אבטחה שמושגים באמצעות רכיבי ארכיטקטורת האבטחה של Titanium, גם בשכבת החומרה וגם בשכבת התוכנה. ההטבות האלה בתחום האבטחה מתוארות בפירוט בקטעים הבאים.
| הטבות אבטחה | רכיב ארכיטקטורה |
|---|---|
אזור מהימנות ברמת הסיליקון במערכות על שבב (SoC) כמו מעבדי CPU או GPU |
Caliptra RTM |
אפשרות אימות ברמת הסיליקון |
Caliptra RTM |
זהות קריפטוגרפית ברמת החומרה |
Caliptra RTM, Titan RoT |
אימות של קובצי ההפעלה הבינאריים שפועלים |
Caliptra RTM, Titan RoT |
צמצום איומים מתמשכים במהלך אתחולים |
Caliptra RTM, Titan RoT |
הגנה על סודיות הנתונים במנוחה ועל הנתונים בתנועה |
נושאים מובילים בנושא קריפטוגרפיה |
העברת הגנה ברמת המעבד (מעבר לכרטיס פיזי) |
TOPs for cryptography |
אבטחה מובנית, עמידות בפני תקיפות פיזיות ויכולות התאוששות שתומכות בשחזור מלא של קושחת המערכת מ-Titan RoT יחיד |
לוחות אם בהתאמה אישית |
לוחות שנוצרו במיוחד עם מחברים חיוניים בלבד, כדי לצמצם את הסיכון לניסיונות חבלה פיזיים |
לוחות אם בהתאמה אישית |
בידוד של עומסי עבודה קריפטוגרפיים מתוכנת מערכת בכל המכונה ומגישה אנושית אדמיניסטרטיבית |
מובלעות של Confidential Computing |
עמידות בפני שיבוש באמצעות הצפנת DRAM (כדי להפעיל הצפנה של נתונים בשימוש) |
מובלעות של Confidential Computing |
צמצום האזור המושפע והמחיצה עבור תוקף עם גישה מקומית |
שירותי בק-אנד אזוריים ועמידים בכשלים |
רמות שונות של חלוקה למחלקות |
שירותים אזוריים לקצה העורפי עמידים בכשלים |
Caliptra root of trust for measurement
Caliptra RTM עוזר לבנות אמון ושקיפות בתוכנת הקושחה בסביבה העסקית שלנו, שפועלת במערכות על שבב (SoC) כמו מעבדים, מעבדים גרפיים ו-TPU.
ל-Caliptra RTM יש את היתרונות הבאים:
- מספק שירות קריפטוגרפי בסיסי: Caliptra RTM עוזר לזהות קוד והגדרות קריטיים פגומים באמצעות אימות חזק של שלמות קריפטוגרפית מקצה לקצה. Caliptra RTM יכול למדוד את הקוד וההגדרה שלו באמצעות הצפנה, לחתום על המדידות האלה באמצעות מפתח אימות ייחודי ומוגן בחומרה, ולדווח על מדידות שמעידות על האותנטיות והשלמות של המכשיר. Caliptra RTM מספק זהות קריפטוגרפית למכשיר וקבוצה של מדידות של שלמות הקושחה וההגדרות עבור לוח האם.
- מפחית את הסיכון בשרשרת האספקה הפיזית: Caliptra RTM עוזר לוודא שהחומרה מקורית ושהיא מריצה את הקושחה והתוכנה המיועדות. בנוסף לאבטחת שרשרת האספקה של תוכנות, Caliptra RTM מאפשרת למערכת לאמת את האותנטיות והתקינות של קושחה ותוכנה, בין אם הן נוצרו על ידי Google או על ידי צד שלישי. תהליך האימות הזה מאפשר ל-Caliptra RTM לשמור על האותנטיות והתקינות של עדכונים מורשים, ועוזר לוודא שההגדרות נשארות כמו שהן אמורות להיות ומאומתות.
- הגנה מפני פריצות פיזיות שדורשות גישה ישירה לחומרה פעילה: מכיוון ש-Caliptra RTM מוטמע בשכבות הסיליקון של השבב, לא ניתן לתקוף בהצלחה את RoT באמצעות מתווך PCBA או שבב לא מורשה שמנסה לספק קושחה שגויה למעגל משולב ספציפי לאפליקציה (ASIC). לדוגמה, תוקפים יכולים לעקוף את יכולות הזיהוי של RoT חיצוני על ידי שיבוש של אוטובוס SPI במהירות נמוכה יחסית. עם זאת, קשה יותר לתוקף לפרוץ ל-RoT שמוטמע ב-SoC או ב-ASIC.
Root of trust של שבב Titan
מערכת Titan מתוכננת לשמור על זהות המכשיר באמצעות הצפנה, להגן מפני דחיפות של תוכנות זדוניות ולאכוף את האותנטיות של הקוד באמצעות ביטול.
זהות קריפטוגרפית חזקה של המכשיר עוזרת לוודא שהצי מורכב אך ורק ממכונות מאומתות שמריצות את הקבצים הבינאריים הצפויים, ויכולות לזהות ולאמת גישה לגיטימית. גישה לגיטימית מושרשת ברמת החומרה.
כברירת מחדל, מכונות ייצור משתמשות בהפעלה מהימנה כדי להבטיח שרק תוכנה מאומתת יכולה לפעול. הפעלה מהימנה מאמתת את החתימה הדיגיטלית של כל רכיבי האתחול, ולא מאפשרת למכונה להשתתף בסביבת הייצור אם האימות נכשל.
כאמצעי בקרה מונע נוסף, ביטול קוד מכונה מונע החלה של שינויים בתוכנה שלא אושרו יותר. היכולת לבטל את הגישה בשבבי Titan עוזרת לצמצם לא רק מתקפות זדוניות (לדוגמה, מתקפות של חזרה לגרסה קודמת או מתקפות חוזרות), אלא גם באגים שקשורים ליציבות או לעמידות שאינם זדוניים (לדוגמה, על ידי מניעת התקנה חוזרת בטעות של קושחה ישנה עם באגים).
מידע נוסף זמין במאמר איך Google אוכפת את תקינות האתחול במכונות ייצור.
מעבדי Titanium להעברת עומס עבודה לקריפטוגרפיה
מעבדי Titanium להעברת עומס (TOP) לצורך קריפטוגרפיה עוזרים לספק אבטחה במהלך העברת עומס של קלט/פלט. ה-TOP האלה מוגנים באמצעות Titan או Caliptra RTM. הטכנולוגיות האלה מאפשרות לפרוס הצפנה מאומתת של נתונים במעבר והצפנה מאומתת של נתונים במנוחה בעלות נמוכה. הצפנה מאומתת פירושה שנתוני הלקוחות מוגנים באמצעות קריפטוגרפיה לשמירה על סודיות ושלמות הנתונים. מכיוון ש-TOPs מנהלים את הקריפטוגרפיה, הם מבטלים את ההרשאות של הרבה רכיבי מערכת. הטכנולוגיה הזו מאפשרת לשפר את מאפייני הארכיטקטורה, כמו זמינות, תוך מזעור הסיכון לאובדן סודיות הנתונים.
לוחות אם בהתאמה אישית
לוחות האם המותאמים אישית בתשתית של Google נועדו לספק תיעוד של מקור החומרה. לוחות האם תומכים באימות בכמה שכבות. העיצובים של לוחות האם מגנים על נתוני הלקוחות, גם במקרה הלא סביר שתוקף יחבר פיזית מכשיר זדוני למכונה. תכנוני לוחות אם מטיטניום עוזרים להפעיל פריסה מהימנה של מנגנוני אבטחה נוספים, כמו יציאות ניפוי באגים ללא רכיבים, קונסולות טוריות לקריאה בלבד, חדירה למחבר האוטובוס ואיתות אקסטרוזיה.
TLS ו-ALTS הם הפרוטוקולים היחידים שמתקבלים ונחשפים על ידי ערימת הרשת של BMC כשהמכונה מופעלת. במכונות שמשתמשות בעיצוב COTS של צד שלישי, כמו מופעי X4 שלנו, TOPs מעביר פרוקסי לכל תנועת הניהול שייחודית לעיצוב של אותו צד שלישי. העברת תעבורת ניהול דרך שרת proxy פירושה שהתשתית שלנו לא תלויה בעיצובים של צד שלישי לאימות, להרשאה, לאבטחת תעבורה או לאבטחת רשת.
לוחות אם מותאמים אישית של Titanium כוללים מנגנוני גיבוי ושחזור מובנים כדי להבטיח זמינות ויכולת שחזור. הם יכולים לשחזר את עצמם מרוב הקריסות או מפגיעה בקושחה. העיצובים האחרונים שלנו מאפשרים לבנות מחדש את המכונה כולה מ-Titan RoT אחד שפועל. לוחות האם האלה משתמשים ברכיבי חשמל ייעודיים לתכונות ובאיתות איפוס כדי להבטיח את העצמאות החשמלית של Titan RoT משאר הפלטפורמה, וכדי להגן על השליטה שלהם במטענים של קושחת הפלטפורמה למטרות אימות ושחזור.
מובלעות של Confidential Computing
Confidential Computing יוצר סביבת מחשוב אמינה (TEE) או מובלעת כדי לבודד עומסי עבודה רגישים של לקוחות מגישה אדמיניסטרטיבית של Google. כשמעבדים את הנתונים באמצעות CPU או GPU, Confidential Computing מספקת אמצעי בקרה טכני מונע באמצעות בידוד מחשוב והצפנה בזיכרון. השימוש בטכנולוגיית Confidential Computing עוזר לוודא שאפילו היפר-ויז'ור זדוני לא יוכל לגשת למכונה וירטואלית. במקרה של עומסי עבודה של לקוחות, Confidential Computing מספק שכבת בידוד של סודיות הנתונים מפני אפשרות של גישה לא מכוונת של צוות Google או פעולות שגויות של תוכנת מערכת אוטומטית בהיקף נרחב.
דוגמה לאבטחה מתקדמת שמופעלת על ידי ארכיטקטורת Titanium היא מצב סודיות ל-Hyperdisk Balanced. המצב הסודי ב-Hyperdisk Balanced משלב בין העברות של אחסון בלוקים מבוסס-Titanium, Confidential Computing ו-Cloud HSM כדי ליצור TEE עם שורש חומרה. במילים אחרות, מצב סודי ל-Hyperdisk Balanced הוא הצעה של Hyperdisk Balanced. המצב 'סודי' ב-Hyperdisk Balance מבודד את התשתית כך שמפתחות רגישים מעובדים באופן בלעדי בסביבת TEE שמושרשת בחומרה. מידע על הבדיקה של פעולות ההצפנה שבוצעה על ידי צד שלישי מופיע בדוח ציבורי – ניתוח של הגנה על מפתח הצפנה של Hyperdisk – מצב סודי.
שירותים אזוריים לקצה העורפי עמידים בכשלים
שירותים אזוריים עמידים בכשלים בקצה העורפי עוזרים לצמצם את האזור המושפע מתוקף עם גישה מקומית. התשתית של Google מתוכננת כך שהיא מחלקת את השירותים, המערכות והאזורים לתאים נפרדים כדי למנוע תנועה לרוחב של משתמשים פנימיים עם הרשאות מיוחדות או של שירותים שנפרצו.
אנחנו פועלים להכללת מידע אזורי במערכות הפנימיות שלנו לניהול זהויות וגישה, במגוון רחב יותר ויותר של מערכות. המידע האזורי מחזק את הבידוד הקריפטוגרפי, כך שתוקף שמשיג גישה מקומית צריך לפגוע בכמה פרטי כניסה משירותי תשתית נפרדים כדי להמשיך להתקדם לרוחב.
אם התקפה מפעילה אמצעי בקרה מונע שיוציא מכונת ייצור מהסביבה (לדוגמה, יגרום למערכת להיכבות), תשתית ה-Backend שלנו, העמידה בכשלים, עוזרת להבטיח את המשך הזמינות של נתוני הלקוחות והשירותים במכונות סמוכות. מידע נוסף על אמצעי הבקרה בתשתית שלנו זמין במאמרים BeyondProd ואיך Google מגנה על שירותי הייצור שלה.
וקטורי התקפה לתשתית Google Cloud
בקטע הזה מתוארים איומים פיזיים ולוגיים ספציפיים שמהווים חלק משטח התקיפה של Google Cloud. ארכיטקטורת אבטחת החומרה של Titanium תוכננה במיוחד כדי לתת מענה למערך ייחודי של איומים על התשתית של Google ועל נתוני המשתמשים שאנחנו מאחסנים.
איומים על התשתית
ארכיטקטורת Titanium מיועדת להגנה מפני מספר קטגוריות של איומים:
- משתמש פנימי לא מורשה עם גישה פיזית: אנשי הצוות שלנו צריכים גישה למכשירים פיזיים במרכזי נתונים כדי לפרוס, לתחזק ולתקן חומרה. הגישה הזו מייצגת וקטור תקיפה פוטנציאלי, כי לעובדים או לקבלנים לא מורשים יש סיבה עסקית לגיטימית לתקן פיזית חלק מהמכונות במרכזי הנתונים שלנו.
משתמש פנימי בעל כוונות זדוניות עם גישה לוגית: בדומה לגישה פיזית למרכז הנתונים, נדרש כוח אדם כדי לפתח, לתחזק, לבדוק, לנפות באגים, לכוונן ולתמוך בכמה רמות של חבילת התוכנה של Google. הצוות הזה כולל מפתחים, מהנדסי SRE ומהנדסי ענן שפועלים מול הלקוחות.
למידע נוסף על אמצעי ההגנה שלנו מפני האיום הזה, אפשר לעיין במאמר איך Google מגנה על שירותי הייצור שלה.
תוקף חיצוני עם גישה לוגית: תוקפים חיצוניים יכולים להשיג דריסת רגל בסביבת Google Cloud ולנסות לעבור לרוחב למכונות אחרות כדי לקבל גישה למידע אישי רגיש. טקטיקה נפוצה שבה משתמשים תוקפים חיצוניים היא להתחיל בפריצה לחשבון לגיטימי של עובד או קבלן.
בתרשים הבא מוצג החלק בסביבת הענן שהכי פגיע לאיומים האלה.
שטח התקפה לשרתים במרכז נתונים
בטבלה הבאה מתוארים שטחי התקפה שהם היבטים אופייניים של שרתים במרכזי נתונים. ארכיטקטורת אבטחת החומרה של Titanium נועדה לספק הגנה חזקה מפני איומים כאלה.
| התוקף | היעד | שטח ההתקפה | סיכון |
|---|---|---|---|
משתמש פנימי בעל כוונות זדוניות עם גישה פיזית |
מדיית אחסון (כונני SSD, HDD או כונני אתחול) |
כוננים ומחברים פיזיים |
במסגרת התקיפה הזו, התוקף יכול לגנוב כונן ולנסות לגשת אליו באמצעות הכלים שלו. |
DIMM |
מחברים של זיכרון פיזי |
במתקפה כזו, התוקף יכול להקפיא את מודול ה-DIMM, להוציא אותו ממרכז הנתונים ולנסות לגשת לנתונים שבו באמצעות כלים משלו. האיום הזה נקרא לפעמים מתקפת אתחול קר. |
|
שרת |
מחברי USB או PCIe |
התקפה כזו יכולה לחבר חומרה זדונית לשרת. באמצעות החומרה הזדונית, התוקף יכול לנסות להריץ קוד או לחלץ נתונים ששמורים במכשיר. |
|
לוח אם |
קבוצת גישה משותפת לבדיקה (JTAG) יציאת ניפוי באגים מורחבת (XDP) |
התקפה כזו יכולה לחבר כלי לניפוי באגים בחומרה כדי להריץ קוד או לגשת לנתונים שעוברים עיבוד במעבד. |
|
רשת |
כבלים של Ethernet |
במתקפה כזו אפשר להתחבר לכבל Ethernet כדי לקבל גישה לכל הנתונים שמועברים בין המכשירים. אפשר יהיה לראות כל תנועה לא מוצפנת. |
|
לוח אם |
קושחה |
המתקפה הזו עלולה להחדיר קושחה זדונית קבועה. יכול להיות שהקושחה הזו הותקנה מראש על ידי יצרן שנפרץ, שהיא נפרצה במהלך ההעברה או שהיא עודכנה על ידי גורם פנימי. האיום הזה עלול להוביל לחומרה שנפרצה מראש עם ערכות כלים ל-Rootkit שמספקות גישת Backdoor לשרת. |
|
משתמש פנימי בעל גישה לוגית שפועל בצורה לא חוקית |
עומס עבודה של מחשוב (לדוגמה, מכונות וירטואליות) |
נקודות כניסה |
במסגרת התקיפה הזו, התוקף יכול להשתמש בפרטי כניסה של משתמש פנימי כדי לגשת ישירות למכונות וירטואליות או למארחים ולנתונים שבהם. |
נתב רשת |
גישה פיזית או הרשאת אדמין |
מתקפה כזו יכולה להשיג שליטת-על בנתב של רשת, כדי להאזין לכל התעבורה ולבצע אקספילטרציה או שינוי של כל נתון בטקסט לא מוצפן שנמצא בתעבורה ברשת. |
|
לוח אם |
קושחה |
המתקפה הזו עלולה להחדיר תמונות פגומות של קושחה ללוחות אם, מה שגורם להם להפסיק לפעול באופן סופי ולנתונים להיות בלתי ניתנים לשחזור. תוקף יכול להעביר קושחה עם נקודות חולשה ידועות למכונות כדי להשיג שליטה מחדש באמצעות ניצול פרצות אבטחה שמאפשרות הפעלת קוד מרחוק. |
|
תוקף חיצוני עם גישה לוגית |
שרת |
VMs (מכונות וירטואליות) |
ההתקפה הזו יכולה להפעיל דפוסי התקפה ציבוריים בערוץ צדדי על מכונות וירטואליות. המתקפות האלה עלולות לגרום לדליפת נתונים ממופעים שפועלים באותה חומרה, או מתוכנת מערכת המארח. |
כונני SSD |
VMs (מכונות וירטואליות) |
במתקפה הזו יכול להיות שימוש בגישה ישירה לכונני SSD של PCIe כדי לנסות להסיק נתונים של דיירים משותפים. |
|
זיכרון |
VMs (מכונות וירטואליות) |
וקטור תקיפה זה יכול להשתמש בערוצים צדדיים כדי לחפש בזיכרון מפתחות הצפנה חשובים. |
|
שרת |
מכונות וירטואליות מסוג Bare-metal |
וקטור תקיפה זה יכול להשתמש ב-bare-metal instances כדי לסרוק את כל הציוד ההיקפי, למצוא רכיב פגיע שיאפשר לו להתמיד במכונה ולתקוף דיירים עוקבים. |
מיפוי רכיבי חומרה של Titanium לאיומים
ארכיטקטורת אבטחת החומרה של Titanium מבוססת על גישה רב-שכבתית שמטרתה לטפל באיומים ספציפיים על התשתית ולמנוע נקודות כשל יחידות. האיומים האלה יכולים לנבוע מטעויות או מגורמים זדוניים. האיומים האלה משפיעים על פעולות החומרה, ויכולים לנצל נקודות חולשה בשרתים, ברשתות וברמת הבקרה. אין פתרון יחיד שיכול לטפל בכל וקטורי התקיפה האלה, אבל השילוב של התכונות של Titanium עוזר להגן על נתוני המשתמשים שלנו ועל מופעי מחשוב הענן שלנו.
תרחיש: פעולות חומרה לא מורשות
פעולות חומרה לא מורשות מהוות איום על אבטחת מידע, כי הן עלולות להוביל להעברת נתונים ממרכזי נתונים ולשינוי של חומרה וקושחה. ארכיטקטורת האבטחה של חומרת Titanium של Google עוזרת להגן מפני האיומים האלה באמצעות מגוון אמצעי אבטחה, כולל RoT קריפטוגרפי, לוחות אם בהתאמה אישית ומעבדי קלט/פלט. המרכיבים האלה פועלים יחד כדי לספק הגנה רב-שכבתית שעמידה בפני מגוון רחב של מתקפות.
בטבלה הבאה מתוארים כמה איומים של חומרה זדונית ואיך ארכיטקטורת Titanium יכולה לצמצם אותם.
| איום | השבתה זמנית של אותות אכיפה של טיטניום |
|---|---|
תוקף מחלץ כונני נתונים בודדים ממרכזי הנתונים כדי לגשת לנתונים שבהם. |
מפתחות הצפנה של נתונים במנוחה למוצרים ולשירותי אחסון אף פעם לא מאוחסנים באופן קבוע במכונות שאליהן מחוברים אמצעי האחסון. יכולות ההצפנה העצמית המובנות של אמצעי האחסון מופעלות גם לצורך הגנה מעמיקה, והן משתמשות במפתחות שלא נשמרים באופן קבוע באמצעי האחסון עצמו. מודולי Caliptra RTM מאפשרים ל-Google לכלול את זהות החומרה של שורש האמון ואת תקינות הקושחה בין תנאי ההרשאה שנדרשים לשחרור מפתחות משירות ניהול מפתחות למופעים של שירות אחסון. למכונות שהוגדרו בצורה זדונית עם קושחה לא מכוונת אין גישה למפתחות שנדרשים לפענוח הנתונים המאוחסנים. ה-RoT שמוטמעים בחבילות הסיליקון מעגנים את הזהויות הקריפטוגרפיות הרלוונטיות בחבילת השבבים. מתווכים חד-פונקציונליים הם החלק העיקרי באבטחת מישור הנתונים שלנו, והם מצפינים את הנתונים בכל שלב עיבוד. היתרונות של שימוש ב-TOPs:
פתרונות תוכנה מוכחים כמו dm-crypt משמשים לכוננים עם ביצועים נמוכים יותר, שבהם צמצום שטח הפנים להתקפה הוא בעל חשיבות עליונה, כמו בכמה תרחישי שימוש בכונן אתחול. |
תוקף מתחבר לכבל רשת וקורא בייטים מהחיבור או מהסיב. |
TOPs מצפינים נתונים במעבר, וכך מונעים מגורם מאיים להריח נתונים חשובים ברשת. כרטיסי ה-NIC שלנו משתמשים בתקן PSP להעברת עומס חומרה. התקן הזה מספק הצפנה חסכונית עם ירידה מינימלית בביצועים. ההטמעות האלה תואמות לתקן FIPS. נתוני הלקוחות מוצפנים כשהם עוברים דרך מתגי ToR (Top of Rack) או מתגי fabric. חלק מהתשתיות של למידת מכונה משתמשות במנגנוני אבטחת העברה קנייניים. |
תוקף מחליף שבבי זיכרון פלאש שמכילים קוד ניתן לשינוי במרכז הנתונים או בשרשרת האספקה כדי להריץ קוד זדוני בשרתים. |
שבבי Titan מתוכננים לדחות את המתקפה ולא לספק גישה לפרטי הכניסה שמאוחסנים בתוכם. גם אם תוקף ישכתב את התוכן של שבבי פלאש לא נדיפים, Titan RoT ידווח בצורה מאובטחת על מדידה של הקוד למישור הבקרה של Google, שנועד לחסום את המכשיר. Google מבטלת באופן שגרתי קוד שיצא משימוש או קוד שידוע שהוא פגיע, בקנה מידה גלובלי בציוד שלנו, באמצעות שבבי Titan. |
תוקף מחדיר מכשירים מתנגדים לממשקים פיזיים של שרתים או כרטיסים במרכז נתונים כדי להריץ קוד זדוני או לחלץ נתונים. |
תכנונים מותאמים אישית של לוחות אם מסירים את הממשקים שמשמשים להחדרת מכשירים עוינים. הגדרות Input-Output Memory Management Unit (IOMMU) מיועדות למנוע התקפות מסוג PCIe screamer בכל הקושחה שלנו. (מכשירים שנקראים PCIe screamers מיועדים לקריאה ולכתיבה של מנות שרירותיות ב-PCIe fabric). ככל שהתעשייה מתפתחת, אנחנו משלימים את ההגנה הזו באמצעות PCI IDE כדי לצמצם את הסיכון לשימוש בטכניקות מתוחכמות יותר של PCI interposers. ALTS ו-TLS הם החיבורים המאומתים והמורשים היחידים לרשת שמתקבלים עבור פונקציות של בקרה וניהול ב-TOP וב-BMC. מערכות Caliptra RTM חוסמות קושחה שלא אושרה. הציוד ההיקפי המהימן שלנו מאמת את זהות החומרה ואת תקינות הקוד שלו במישור הבקרה שלנו, ואף שרת לא מתקבל לייצור אם רשומת האימות לא תואמת לחומרה ולתוכנה המיועדות. |
תוקף משתמש בהתקפת אתחול קר במרכז הנתונים כדי לגשת לנתונים ב-RAM. |
הצפנה בזיכרון באמצעות Confidential Computing מגנה על כל מידע אישי רגיש או מפתח הצפנה ב-RAM. הצפנת DRAM מופעלת גם במכונות שנפרסות ללא Confidential Computing במרכזי נתונים של Edge עם רמת אבטחה נמוכה יותר. |
תרחיש: ניצול לרעה של שרתים או רשתות על ידי משתמשים לא מורשים
תוקפים עשויים להשתמש בענן הציבורי כדי לארח את עומסי העבודה הזדוניים שלהם בתשתית המשותפת שלנו, וכדי להפקיד נתונים בשירותים הציבוריים שלנו. גורמים חיצוניים עוינים, החל מאנשים פרטיים ועד למדינות, עשויים גם לנסות להשיג גישה מרוחקת עם הרשאות.
כדי לצמצם את הפעולות האלה, ארכיטקטורת האבטחה של חומרת Titanium משתמשת בצ'יפים של Titan וב-Caliptra RTM כדי להקצות הרשאות בזמן ריצה בצורה מאובטחת, ולהגביל את ההרשאות בחומרה ובמערכות ההפעלה. Confidential Computing עוזר להגן מפני מניפולציה של זיכרון המערכת – פיזית או באמצעות מתקפות hypervisor – ושבבי Titan דוחים או מזהים שדרוגי תוכנה לא מורשים.
בטבלה הבאה מתוארים כמה איומים של ניצול לרעה של שרתים ורשתות, ואיך ארכיטקטורת Titanium יכולה לצמצם אותם.
| איום | צמצום הסיכון ב-Titanium |
|---|---|
תוקף מנצל פגיעות כדי לצאת מהמכונה הווירטואלית שלו ולקבל גישה לנתונים ולמכונות וירטואליות אחרות שפועלות באותה מכונה. |
מובלעות של Confidential Computing מצמצמות את זליגת הנתונים של עומס העבודה, בין אם הם בתהליך או במנוחה. הפחתת הסיכון הזו חוסמת תוקף שפרץ ממכונה וירטואלית ומונעת ממנו לגשת לנתונים שבשימוש. שבבי Titan ו-Caliptra RTM חוסמים את התוקף ומבטיחים שלא תהיה לו גישה מתמשכת. סביר להניח שכל ניסיון לגישה מתמשכת יזוהה, כי הגדרת המכונה לא תתאים להגדרת המדיניות ולקוד של השרת. התאמה כזו נדרשת כדי שהמכונה תוכל לארח עומסי עבודה של ייצור אחרי הפעלה מחדש. |
תוקף מפעיל תבניות של התקפות ערוץ צדדי ציבוריות על מכונות וירטואליות. |
מערכת ניהול ה-Fleet שלנו, שמשתמשת בשבבי Titan, יכולה לבטל תוכנות עם נקודות חולשה ידועות. ביטול יכול לחסום התקפות עתידיות שמכוונות לפגיעויות הידועות האלה. בנוסף, מדידות התקינות שמבוססות על Titan מספקות רמת ודאות גבוהה לגבי הפריסה של אמצעי ההגנה במכונות היעד, שאולי צריך לפרוס אותם בדחיפות. אנחנו מחזקים את הגישה הזו על ידי שמירה על מובילות בחקירה של ערוצים צדדיים וצמצום הסיכון, באמצעות טכניקות כמו retpoline ותזמון ליבה, ומחקר מתקדם בנושא Meltdown, Spectre, Zenbleed, Downfall ועוד. |
תוקף משתמש בגישה ישירה לכונני SSD שמספקים אחסון למספר דיירים כדי לנסות להסיק נתונים של דיירים אחרים. |
הצפנת נתונים במנוחה עוזרת להגן מפני התקפות לוגיות ופיזיות באמצעות מגוון של אמצעי ביניים. במשאבים שלא משותפים, הנתונים של כל דייר מוצפנים באמצעות מפתחות שונים, מה שמצמצם את הסיכון להתקפות גישה ישירה נגד ה-SSD. |
התוקף סורק את הזיכרון ומשתמש בערוצים צדדיים כדי לחפש מפתחות להצפנת נתונים או פרטי כניסה. |
צ'יפים מסוג Titan מאפשרים הקצאה של אישורים חתומים לכל מכונה. גם אם תוקף ישיג גישת שורש במחשב אחד, פרטי הכניסה שלו יהיו קשורים רק לזהות הפרטית של שבב Titan המקומי. |
תוקף רוכש מופעים של שרתים פיזיים ומבצע סריקה של כל הציוד ההיקפי כדי לנסות להשיג גישה מתמשכת. |
שבבי Titan דוחים כל שדרוג תוכנה לא מורשה, כולל שליחות זדוניות לשליטה מתמשכת. תהליך העבודה של המכונה מאשר באופן חיובי את מדידות השלמות הצפויות לאורך מחזור מלא של הפעלת המערכת בין לקוחות של שרתים פיזיים. |
תרחיש: ניצול לרעה של שרתים או רשתות על ידי התנהגות לא תקינה של מישור הבקרה
גורמים פנימיים במטוס הבקרה יכולים לנסות לנצל את המערכות של Google במספר דרכים, כולל ניסיון להשיג שליטת שורש על נתב בד, שליחת תמונות קושחה פגומות ללוחות אם והאזנה לתעבורת הרשת. ארכיטקטורת אבטחת החומרה של Titanium מגנה מפני האיומים האלה באמצעות מגוון מנגנונים, כולל צ'יפים של Titan, RTM של Caliptra, לוחות אם בהתאמה אישית ושירותים מבודדים עמידים בכשלים בבק-אנד.
בטבלה הבאה מתוארים חלק מהאיומים על מישור הבקרה והאופן שבו ארכיטקטורת Titanium יכולה לצמצם אותם.
| איום | השבתה זמנית של אותות אכיפה של טיטניום |
|---|---|
תוקף משתמש בפרטי כניסה של משתמש פנימי כדי לגשת למכונות וירטואליות ב-Compute Engine שמשמשות כשכבת הבסיס לסביבות של לקוחות. |
TOPs עוזרים לוודא שלאדמינים אין גישה לסביבות של לקוחות. בלי גישה, אנשי Google לא יכולים להשתמש בפרטי הכניסה שלהם כדי לגשת לשכבת החומרה והתוכנה עם הרשאות היתר שנמצאת מתחת למכונות הווירטואליות של הלקוחות שלנו. הגישה של Google לנתוני לקוחות נחסמת כי הגישה לנתונים אפשרית רק דרך ממשקי API מוגדרים. |
תוקף דוחף תמונות קושחה פגומות בקנה מידה גדול ללוחות אם, וגורם להשבתה שלהם באופן סופי. |
שורשי אמון (RoT) של שבבי Titan דוחים כל שדרוג תוכנה לא מורשה, כולל דחיפות זדוניות לשליטה מתמשכת. עיצובים מותאמים אישית של לוחות אם משתמשים ברשת חלופית של אותות שמקשרת בין כל שורשי האמון שלנו לבין שורש האמון של הפלטפורמה. ה-RoT של הפלטפורמה מחזיק בקושחת גיבוי למכשירים קריטיים. גם אם התוקף השבית את הרשת ואת PCI, הרשת מחוץ לפס (OOB) יכולה לתקן את המערכת. |
תוקף דוחף קושחה מיושנת עם נקודות חולשה ידועות למכונות כדי להשיג שליטה מחדש באמצעות נקודות חולשה ציבוריות. |
שבבי Titan דוחים הודעות פוש זדוניות ועוזרים לאכוף את ביטול הגישה לקוד עם נקודות חולשה ידועות. הם מאמתים את גרסת הקושחה שנפרסה במכונה ודוחים את המכונה במישור הבקרה. הפתרון הזה עוזר למנוע הפעלה של עבודות במכונה לא תקינה, ומפעיל חקירה או תיקון לפי הצורך. |
תוקף מנצל לרעה יכולות ניפוי באגים בסיליקון שדרושות להמשכיות עסקית, ומספקות את הרמה הגבוהה ביותר האפשרית של גישה לנתונים במערכות שרתים. |
Caliptra RTM עוזר לוודא שכל הפרמטרים שמפעילים ממשקי ניפוי באגים פולשניים, בין אם הם מחוברים באופן לוגי או באמצעות החדרת חומרה פיזית ישירה, מוגדרים בצורה מהימנה, נמדדים באופן קריפטוגרפי ומדווחים למישור הבקרה שלנו באמצעות פרוטוקול אימות. רק למכונות שנמצאות במצב הרצוי יש גישה להצגת עומסי עבודה בסביבת הייצור. |
תוקף מקבל שליטה בשירות לקצה העורפי אחד כדי שיוכל לגשת לסביבות של לקוחות. |
שירותים אזוריים עמידים בפני תקלות בקצה העורפי הם תשתית אזורית של אישורים שלא מאפשרת גישה חד-צדדית של בני אדם. בנוסף למניעת התחברות של מפעילים לצמתי מחשוב, מפעילים גם לא יכולים להתחבר למישור הבקרה כדי לאחזר נתוני מפתח. אזורי Confidential Computing בארכיטקטורת Titanium מבודדים את שירותי ההרשאה והקצאת המפתחות של ה-Backend מהרשאות הבסיס של המכונה. היררכיות של מפתחות עוזרות להגן על מפתחות החתימה וההרשאה של רוב השירותים. בהיררכיות של מפתחות, מפתחות הבסיס נמצאים במפתחות מבודדים שמוחזקים ב-HSM ובכספות, או במפתחות שמוחזקים בסביבת ייצור על ידי קבוצת Paxos של מאגרי נתונים בזיכרון. |
המאמרים הבאים
- קריאת הסקירה הכללית על תכנון האבטחה בתשתית
- הטמעה של Confidential Computing.