Project Mainline של גוגל באנדרואיד Q יעזור להאיץ את עדכוני האבטחה

במהלך כנס המפתחים של Google I/O 2019, גוגל הכריזה על Project Mainline - מאמץ להאיץ את עדכוני האבטחה באמצעות מודולים באנדרואיד Q.

פיצול גרסת אנדרואיד הוא אחד האתגרים הגדולים ביותר לפתרון של גוגל. בעוד הסמארטפונים של Google Pixel הם בין הסמארטפונים המאובטחים ביותר בשוק הודות למאמצים המדהימים של Pixel ו מהנדסי AOSP, סמארטפונים רבים אחרים חשופים לניצול עקב הפעלת גרסאות מערכת הפעלה מיושנות או תיקון אבטחה מיושן רמות. הדוח האחרון של גרטנר מראה ש-Android 9 Pie היא מערכת הפעלה מאובטחת להפליא, עדיין רק כ-10% מכל הסמארטפונים נמצאים בשחרור.

סקירה כללית של 2019 מערכת הפעלה ניידת ואבטחת מכשירים: דוח השוואה של פלטפורמות. מָקוֹר: גרטנר. באמצעות: גוגל.

גוגל מתמודדת עם פיצול גרסאות עם יוזמות כגון פרויקט טרבל, אדריכלות מחדש גדולה של אנדרואיד וכתוצאה מכך הפרדה בין רכיבי המסגרת של מערכת ההפעלה אנדרואיד לרכיבי HAL של הספק, LTS מורחב ליבת לינוקס, עדכוני תיקון אבטחה חובה במשך שנתיים, ו Android Enterprise מומלץ. ב-Google I/O 2019, החברה הודיעה על היוזמה האחרונה שלה להאצת עדכוני אבטחה: Project Mainline עבור Android Q.

עיקרי הפרויקט: עדכון מודולי מערכת Android Q באמצעות Google Play

במהלך החודשים האחרונים עקבנו אחר משהו שנקרא "שִׂיא"ב-AOSP. APEX, או אנדרואיד פוני אקספרס, הוא סוג חבילה חדש הדומה ל-APK. עם זאת, במקום לאכלס אפליקציית אנדרואיד, APEX היא ביתה של ספרייה מקומית או כיתתית, קוד מהודר מראש שניתן לקרוא לו על ידי אפליקציות אנדרואיד, שכבות הפשטה של ​​החומרה (HAL) וה-Android זמן ריצה (ART). כמו ה-APK, ניתן להגיש חבילות APEX למשתמשים באמצעות שיטות התקנת חבילות מסורתיות באנדרואיד: חנות Google Play/מנהל החבילות או ADB.

ניתן להשתמש במודולי APEX הרבה יותר מוקדם בתהליך האתחול מאשר מודולים מבוססי APK, והם גם מגובים על ידי dm-verity ו-Android Verified Boot להגברת האבטחה. הרכבה של תמונות המטען בחבילת APEX דורשת מנהל התקן הלולאה של ליבת לינוקס, כך שהמכשירים צריכים גרסת ליבת לינוקס 4.9+. ניהול חבילות APEX דורש את הדמון APEX החדש, שהוצג עם Android Q. אמנם זה אפשרי עבור מכשירים המשדרגים ל-Android Q עם ליבת לינוקס 4.4 לתמוך ב-APEX (כמו Google Pixel 3), יצרני OEM צריכים למזג תיקונים נוספים כדי שזה יעבוד. לרוב, רק מכשירים המופעלים עם Android Q יתמכו ב-Project Mainline.

הפצות GNU/Linux כבר מזמן מסוגלות לעדכן רכיבי מערכת ללא תלות בעדכוני מערכת מלאים, אך אנדרואיד תמיד דרשה עדכון מערכת כדי לעדכן אותם. גוגל בחרה שלא להפיץ את החבילות הללו באמצעות מערכות ניהול חבילות לינוקס מסורתיות כמו dpkg ו-rpm מכיוון שהן אינן מגנות על חבילות לאחר ההתקנה באמצעות dm-verity.

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

היתרונות של Project Mainline. מקור: גוגל.

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

  • בִּטָחוֹן: Codec מדיה, רכיבי מסגרת מדיה, פותר DNS, Conscrypt
  • פְּרָטִיוּת: ממשק משתמש של מסמכים, בקר הרשאות, ExtServices
  • עֲקֵבִיוּת: נתוני אזור זמן, ANGLE (הצטרפות למפתחים), מטא נתונים של מודול, רכיבי רשת, התחברות לפורטל שבוי, תצורת הרשאות רשת

עדכונים מיידיים של Conscrypt, ספריית האבטחה של Java ורכיבי המדיה, ש"היוו כמעט 40% מהפגיעויות שתוקנו לאחרונה", יהפכו את מכשירי האנדרואיד לבטוחים יותר. עדכונים לבקר ההרשאות ישפרו את הפרטיות. סטנדרטיזציה של נתוני אזור הזמן תעזור לשמור על מכשירי אנדרואיד ברחבי העולם באותו דף בכל פעם שמדינה מחליטה לשנות את אזור הזמן שלה. יתר על כן, מפתחי משחקים ייהנו מהסטנדרטיזציה של זָוִית.

גוגל מתחילה עם רכיבי מערכת אלו אך עשויה להוסיף עוד במהדורות עתידיות של אנדרואיד. מתוך 13 הרכיבים הללו, Conscrypt, נתוני אזור זמן, רכיבי Codec של מדיה ורכיבי Media Framework יסופקו כחבילות APEX. 9 הרכיבים האחרים הם APKs של מערכת. בעוד שגם APEX וגם APKs ניתנים למסירה דרך Google Play, עדכון חבילת APEX ידרוש אתחול מחדש. גוגל עדיין לא שיתפה את זרימת ממשק המשתמש כיצד זה יקרה, אבל ברגע שהמכשירים יתחילו להשיק עם Android Q, סביר להניח שנלמד מידע נוסף על חבילות Project Mainline ו-APEX.