ארכיטקטורת אבטחת חומרה של Titanium ב-Google

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

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

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

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

ארכיטקטורת אבטחת חומרה Titanium

ארכיטקטורת אבטחת החומרה של 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

רכיבי החומרה של Titanium והאינטראקציות שלהם מפותחים על סמך העקרונות הבסיסיים הבאים:

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

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

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

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

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

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

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

    מידע נוסף על ההטמעה של מודל אבטחה של אפס אמון זמין במאמר BeyondProd.

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

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

    פרויקט קוד פתוח תיאור רכיב Titanium

    BoringSSL

    בשימוש בספריות הצפנה FIPS 140-3 ברמה 1

    BoringSSL

    Caliptra

    בשימוש בשורשי אמון (RoT) ברמת הסיליקון

    Caliptra RTM

    OpenTitan

    בשימוש ב-RoT עבור שבב בארכיטקטורת מערכת

    שבבי Titan

    Syzkaller

    משמש לבדיקת fuzz של ליבת מערכת ההפעלה בהנחיית כיסוי

    מערכות הפעלה של מכונות וירטואליות של משתמשים ומארחים ברמה 0

    PSP

    בשימוש בספריות הצפנה 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

הגנה על סודיות הנתונים באחסון ועל הנתונים במעבר

נושאים מובילים בנושא קריפטוגרפיה

העברת הגנה ברמת המעבד (מעבר לכרטיס פיזי)

נושאים מובילים בנושא קריפטוגרפיה

אבטחה מובנית, עמידות בפני תקיפות פיזיות ויכולות התאוששות שתומכות בשחזור מלא של קושחת המערכת מ-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 מספק מזהה מכשיר קריפטוגרפי וקבוצה של מדידות תקינות של הקושחה וההגדרות עבור לוח האם.
  • מפחית את הסיכון באבטחת שרשרת האספקה הפיזית: ה-RTM של Caliptra עוזר לוודא שהחומרה מקורית ושהיא מפעילה את הקושחה והתוכנה המיועדות. בנוסף לאבטחת שרשרת האספקה של תוכנות, Caliptra RTM מאפשר למערכת לאמת את האותנטיות והתקינות של קושחה ותוכנה, בין אם הן נוצרו על ידי Google או על ידי צד שלישי. תהליך האימות הזה מאפשר ל-Caliptra RTM לשמור על האותנטיות והתקינות של העדכונים המורשים, ועוזר לוודא שההגדרות נשארות כמו שהן אמורות להיות ושהן מאומתות.
  • הגנה מפני פריצות פיזיות שדורשות גישה ישירה לחומרה פעילה: מכיוון ש-Caliptra RTM מוטמע בשכבות הסיליקון של השבב, לא ניתן לתקוף בהצלחה את RoT באמצעות PCBA interposer או שבב לא מורשה שמנסה להעביר קושחה שגויה למעגל משולב ספציפי לאפליקציה (ASIC). לדוגמה, תוקפים יכולים לעקוף את יכולות הזיהוי של RoT חיצוני על ידי שיבוש אוטובוס ה-SPI, שמהירותו נמוכה יחסית. עם זאת, קשה יותר לתוקף לפרוץ ל-RoT שמוטמע ב-SoC או ב-ASIC.

root of trust של שבב Titan

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

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

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

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

מידע נוסף זמין במאמר איך Google אוכפת את תקינות האתחול במכונות ייצור.

מעבדי Titanium להעברת עומס עבודה לקריפטוגרפיה

מעבדי Titanium להפחתת עומס (TOP) לקריפטוגרפיה עוזרים לספק אבטחה במהלך הפחתת עומס של קלט/פלט. התכונות האלה מוגנות באמצעות Titan או Caliptra RTM. מפעילי TOPS פורסים הצפנה מאומתת של נתונים במעבר והצפנה מאומתת של נתונים באחסון בעלות נמוכה. הצפנה מאומתת פירושה שנתוני הלקוחות מוגנים באמצעות קריפטוגרפיה, כך שהסודיות והשלמות שלהם מובטחות. מכיוון ש-TOPs מנהלים את הקריפטוגרפיה, הם מבטלים את ההרשאות של הרבה רכיבי מערכת. הטכנולוגיה הזו מאפשרת לשפר את מאפייני הארכיטקטורה, כמו זמינות, תוך מזעור הסיכון לאובדן סודיות הנתונים.

לוחות אם בהתאמה אישית

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

‫TLS ו-ALTS הם הפרוטוקולים היחידים שמתקבלים ונחשפים על ידי ערימת הרשת של BMC כשהמכונה מופעלת. במכונות שמשתמשות בעיצוב COTS של צד שלישי, כמו מופעי X4 שלנו, TOPs מבצע פרוקסי לכל תנועת הניהול שייחודית לעיצוב של אותו צד שלישי. ניהול תעבורת הנתונים באמצעות שרת proxy מאפשר לתשתית שלנו לא להיות תלויה בעיצובים של צד שלישי לצורך אימות, הרשאה, אבטחת העברה או אבטחת רשת.

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

מובלעות של 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

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

לוח אם

יציאת ניפוי באגים מורחבת (XDP) של קבוצת גישה משותפת לבדיקה (JTAG)

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

רשת

כבל אתרנט

התוקף יכול להתחבר לכבל Ethernet כדי לקבל גישה לכל הנתונים שמועברים בין המכשירים. אפשר יהיה לראות את כל התנועה שאינה מוצפנת.

לוח אם

קושחה

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

משתמש פנימי בעל גישה לוגית שפועל באופן זדוני

עומס עבודה של מחשוב (לדוגמה, מכונות וירטואליות)

נקודות כניסה

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

נתב Fabric

גישה פיזית או הרשאת אדמין

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

לוח אם

קושחה

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

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

תוקף חיצוני עם גישה לוגית

שרת

VMs (מכונות וירטואליות)

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

כונני SSD

VMs (מכונות וירטואליות)

במתקפה הזו יכול להיות שינסו להסיק נתונים של דיירים משותפים באמצעות גישה ישירה לכונני SSD של PCIe.

זיכרון

VMs (מכונות וירטואליות)

וקטור תקיפה זה יכול להשתמש בערוצים צדדיים כדי לחפש בזיכרון מפתחות הצפנה חשובים.

שרת

מכונות וירטואליות מסוג Bare-metal

התוקף יכול להשתמש בוקטור התקפה הזה כדי לסרוק את כל הציוד ההיקפי במקרים של מכונות Bare-metal, כדי למצוא רכיב פגיע שיאפשר לו להתמיד במכונה ולתקוף דיירים עוקבים.

מיפוי רכיבי חומרה של Titanium לאיומים

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

תרחיש: פעולות חומרה לא מורשות

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

בטבלה הבאה מתוארים כמה איומים של חומרה זדונית ואיך ארכיטקטורת Titanium יכולה לצמצם אותם.

איום צמצום הסיכון ב-Titanium

תוקף מחלץ כונני נתונים בודדים ממרכזי הנתונים כדי לגשת לנתונים שבהם.

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

מודולי Caliptra RTM מאפשרים ל-Google לכלול את זהות החומרה של שורש האמון ואת תקינות הקושחה בין תנאי ההרשאה שנדרשים לשחרור מפתחות משירות לניהול מפתחות למופעים של שירות אחסון. למכונות שהוגדרו בצורה זדונית עם קושחה לא מכוונת אין גישה למפתחות שנדרשים לפענוח הנתונים המאוחסנים. ה-RoT מוטמעים בחבילות הסיליקון ומקבעים את הזהויות הקריפטוגרפיות הרלוונטיות בחבילת השבבים.

מתווכים חד-פונקציונליים הם החלק העיקרי באבטחת מישור הנתונים שלנו, והם מצפינים את הנתונים בכל שלב עיבוד. היתרונות של שימוש ב-TOPs:

  • הם משמשים כרכיבי ביניים מסיליקון כדי לוודא שכל פקודות NVMe שמקורן בעומסי עבודה עוברות ניקוי מתאים לפני שהפקודות מגיעות למדיה של כונני SSD של צד שלישי.
  • כוללים עיצובים מותאמים אישית של Google SSD עם בקרי הצפנה פרטיים לניהול מפתחות ולביצוע הצפנה ישירות בנתיב הנתונים של החומרה.
  • הפעלת אחסון שניתן להרחבה, מוצפן ומוגן מפני שינויים לא מורשים, וגם חסכוני.

פתרונות תוכנה מוכחים כמו dm-crypt משמשים לכוננים עם ביצועים נמוכים יותר, שבהם צמצום שטח הפנים להתקפה הוא בעל חשיבות עליונה, כמו במקרים מסוימים של שימוש בכונן אתחול.

תוקף מתחבר לכבל רשת וקורא בייטים מהחיבור או מהסיב.

TOPs מצפינים נתונים במעבר, וכך מונעים מגורם מאיים להריח נתונים חשובים ברשת.

כרטיסי ה-NIC שלנו משתמשים בתקן PSP להעברת עומס חומרה. התקן הזה מספק הצפנה חסכונית עם ירידה מינימלית בביצועים. ההטמעות האלה תואמות לתקן FIPS.

נתוני הלקוחות מוצפנים כשהם עוברים דרך מתגי Top of Rack‏ (ToR) או מתגי 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 במרכזי נתונים של קצה עם רמת אבטחה נמוכה יותר.

תרחיש: ניצול לרעה של שרתים או רשתות על ידי משתמשים לא מורשים

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

כדי לצמצם את הסיכונים האלה, ארכיטקטורת האבטחה של חומרת Titanium משתמשת בצ'יפים של Titan וב-Caliptra RTM כדי להקצות הרשאות בזמן ריצה בצורה מאובטחת, ולהגביל את ההרשאות בחומרה ובמערכות ההפעלה. הטכנולוגיה 'Confidential Computing' עוזרת להגן מפני מניפולציות בזיכרון המערכת – פיזיות או באמצעות מתקפות היפר-ויזורים – וצ'יפים של Titan דוחים או מזהים שדרוגי תוכנה לא מורשים.

בטבלה הבאה מתוארים כמה איומים של ניצול לרעה של שרתים ורשתות, ואיך ארכיטקטורת Titanium יכולה לצמצם אותם.

איום צמצום הסיכון ב-Titanium

תוקף מנצל נקודת חולשה כדי לצאת מה-VM שלו ולקבל גישה לנתונים ול-VM-ים אחרים שפועלים באותה מכונה.

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

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

תוקף מפעיל דפוסי התקפה ציבוריים בערוץ צדדי על מכונות וירטואליות.

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

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

תוקף משתמש בגישה ישירה לכונני SSD שמספקים אחסון למספר דיירים כדי לנסות להסיק נתונים של דיירים אחרים.

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

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

צ'יפים של Titan מאפשרים הקצאה של אישורים חתומים לכל מכונה. גם אם תוקף ישיג גישת root במחשב אחד, פרטי הכניסה שלו יהיו קשורים רק לזהות הפרטית של שבב Titan המקומי.

תוקף רוכש מופעים של שרתים פיזיים ומבצע סריקה של כל הציוד ההיקפי כדי לנסות להשיג גישה מתמשכת.

שבבי Titan דוחים כל שדרוג תוכנה לא מורשה, כולל דחיפות זדוניות לשליטה מתמשכת. תהליך העבודה של המכונה שלנו מאשר באופן חיובי את מדידות השלמות הצפויות לאורך מחזור מלא של הפעלת המערכת בין לקוחות Bare-metal.

תרחיש: ניצול של שרתים או רשתות על ידי התנהגות לא תקינה של מישור הבקרה

גורמים פנימיים בממשק השליטה יכולים לנסות לנצל את המערכות של Google במספר דרכים, כולל ניסיון להשיג שליטת שורש על נתב בד, שליחת תמונות קושחה פגומות ללוחות אם וציתות לתעבורת הרשת. ארכיטקטורת אבטחת החומרה של Titanium מגנה מפני האיומים האלה באמצעות מגוון מנגנונים, כולל צ'יפים של Titan,‏ Caliptra RTM, לוחות אם בהתאמה אישית ושירותים מבודדים עמידים בכשלים בבק-אנד.

בטבלה הבאה מתוארים חלק מהאיומים על מישור הבקרה והאופן שבו ארכיטקטורת Titanium יכולה לצמצם אותם.

איום צמצום הסיכון ב-Titanium

תוקף משתמש בפרטי כניסה של משתמש פנימי כדי לגשת למכונות וירטואליות ב-Compute Engine שמשמשות כשכבת הבסיס לסביבות של לקוחות.

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

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

שורשי אמון (RoT) של שבבי Titan דוחים כל שדרוג תוכנה לא מורשה, כולל שליחות זדוניות לשליטה מתמשכת.

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

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

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

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

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

תוקף מקבל שליטה על שירות לקצה העורפי אחד כדי שיוכל לגשת לסביבות של לקוחות.

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

מובלעות של Confidential Computing בארכיטקטורת Titanium מבודדות את שירותי ההרשאה והקצאת המפתחות של ה-Backend מהרשאות הבסיס של המכונה.

היררכיות של מפתחות עוזרות להגן על מפתחות החתימה וההרשאה של רוב השירותים. בהיררכיות של מפתחות, מפתחות הבסיס נמצאים במפתחות עם air gap שמוחזקים ב-HSM ובכספות, או במפתחות שמוחזקים בסביבת ייצור על ידי קבוצת Paxos של מאגרי נתונים בזיכרון.

המאמרים הבאים