תכונות האבטחה של Android

הפיצ'רים המתוארים בקטע הזה הופכים את מכשירי Android שאתם מפתחים למאובטחים ככל האפשר.

ארגז חול לאפליקציות

פלטפורמת Android משתמשת בהגנה מבוססת-משתמש של Linux כדי לזהות ולבודד משאבי אפליקציות. כדי לעשות זאת, מערכת Android מקצה מזהה משתמש ייחודי (UID) לכל אפליקציה ל-Android ומפעילה אותה בתהליך משלה. מערכת Android משתמשת ב-UID הזה כדי להגדיר ארגז חול לאפליקציות ברמת הליבה.

חתימה על אפליקציות

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

אימות

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

במכשירים עם חיישן טביעות אצבע, המשתמשים יכולים לרשום טביעת אצבע אחת או יותר ולהשתמש בהן כדי לבטל את נעילת המכשיר ולבצע משימות אחרות. מערכת המשנה של Gatekeeper מבצעת אימות של תבנית או סיסמה של המכשיר בסביבת מחשוב אמינה (TEE).

Android מגרסה 9 ואילך כולל אישור מוגן, שמאפשר למשתמשים לאשר באופן רשמי עסקאות קריטיות, כמו תשלומים.

מידע ביומטרי

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

הצפנה

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

מאגר מפתחות

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

Security-Enhanced Linux

כחלק ממודל האבטחה של Android, מערכת Android משתמשת ב-Security-Enhanced Linux‏ (SELinux) כדי לאכוף בקרת גישה חובה (MAC) על כל התהליכים, גם תהליכים שפועלים עם הרשאות root או סופר-משתמש (יכולות Linux).

Trusty Trusted Execution Environment‏ (TEE)

Trusty היא מערכת הפעלה (OS) מאובטחת שמספקת סביבת מחשוב אמינה (TEE) ל-Android. Trusty OS פועל על אותו מעבד שבו מותקנת מערכת ההפעלה Android, אבל Trusty מבודד משאר המערכת באמצעות חומרה ותוכנה.

הפעלה מאומתת

המטרה של הפעלה מאומתת היא לוודא שכל הקוד שמופעל מגיע ממקור מהימן (בדרך כלל יצרני ציוד מקורי של המכשיר), ולא מתוקף התקפה או פגיעה. הוא יוצר שרשרת מלאה של אמון, החל מ-root of trust שמוגן בחומרה, דרך מנהל האתחול, מחיצה לאתחול ומחיצות מאומתות אחרות.