אנדרואיד משלבת תכונות אבטחה מובילות בתעשייה ועובדת עם מפתחים ומיישמים מכשירים כדי לשמור על בטיחות הפלטפורמה והמערכת האקולוגית של אנדרואיד. מודל אבטחה חזק חיוני כדי לאפשר מערכת אקולוגית נמרצת של אפליקציות ומכשירים הבנויים על ומסביב לפלטפורמת אנדרואיד ונתמכים על ידי שירותי ענן. כתוצאה מכך, במהלך כל מחזור חיי הפיתוח שלה, אנדרואיד הייתה כפופה לתוכנית אבטחה קפדנית.
אנדרואיד נועד להיות פתוח. אפליקציות אנדרואיד משתמשות בחומרה ובתוכנה מתקדמות, כמו גם בנתונים מקומיים ומוצגים, הנחשפים דרך הפלטפורמה כדי להביא חדשנות וערך לצרכנים. כדי לממש את הערך הזה, הפלטפורמה מציעה סביבת אפליקציה המגנה על הסודיות, השלמות והזמינות של משתמשים, נתונים, אפליקציות, המכשיר והרשת.
אבטחת פלטפורמה פתוחה דורשת ארכיטקטורת אבטחה חזקה ותוכניות אבטחה קפדניות. אנדרואיד תוכננה עם אבטחה רב-שכבתית גמישה מספיק כדי לתמוך בפלטפורמה פתוחה תוך הגנה על כל משתמשי הפלטפורמה. למידע על דיווח על בעיות אבטחה ועל תהליך העדכון, ראה עדכוני אבטחה ומשאבים .
אנדרואיד מיועד למפתחים. בקרות האבטחה נועדו להפחית את העומס על המפתחים. מפתחים בעלי ידע באבטחה יכולים לעבוד איתם בקלות ולהסתמך על בקרות אבטחה גמישות. מפתחים שפחות מכירים את האבטחה מוגנים בברירות מחדל בטוחות.
בנוסף לספק פלטפורמה יציבה לבנות עליה, אנדרואיד מעניקה תמיכה נוספת למפתחים במספר דרכים. צוות האבטחה של אנדרואיד מחפש נקודות תורפה אפשריות באפליקציות ומציע דרכים לתקן את הבעיות הללו. עבור מכשירים עם Google Play, שירותי Play מספקים עדכוני אבטחה עבור ספריות תוכנה קריטיות, כגון OpenSSL, המשמש לאבטחת תקשורת אפליקציות. אבטחת אנדרואיד פרסמה כלי לבדיקת SSL ( nogotofail ) שעוזר למפתחים למצוא בעיות אבטחה פוטנציאליות בכל פלטפורמה שהם מפתחים.
אנדרואיד גם ממנפת את תמיכת החומרה הבסיסית לאבטחה. לדוגמה, טכנולוגיית ARM TrustZone משמשת כדי לספק אחסון מאובטח למפתחות קריפטוגרפיים וכן אישורים על שלמות האתחול. [DICE](https://pigweed.googlesource.com/open-dice/+/refs/heads/main/docs/android.md) משמש למדידת קושחה שנטענת לפני אתחול אנדרואיד. זה מאפשר אימות מרחוק שהקושחה אינה מושפעת מפגיעויות ידועות וקריטיות שעלולות להיות מנוצלות כדי לפגוע במפתחים ובמשתמשים כאחד.
מידע נוסף למפתחי אפליקציות אנדרואיד ניתן למצוא בכתובת developer.android.com .
אנדרואיד מיועד למשתמשים. למשתמשים ניתן לראות את ההרשאות המבוקשות על ידי כל אפליקציה ושליטה על ההרשאות הללו. עיצוב זה כולל את הציפייה שתוקפים ינסו לבצע התקפות נפוצות, כגון התקפות הנדסה חברתית כדי לשכנע משתמשי מכשירים להתקין תוכנות זדוניות, והתקפות על אפליקציות צד שלישי באנדרואיד. אנדרואיד תוכננה גם להפחית את ההסתברות להתקפות אלו וגם להגביל מאוד את השפעת המתקפה במקרה שהיא הצליחה. אבטחת אנדרואיד ממשיכה להתקדם לאחר שהמכשיר נמצא בידי המשתמש. אנדרואיד עובדת עם שותפים ועם הציבור כדי לספק תיקונים לכל מכשיר אנדרואיד שממשיך לקבל עדכוני אבטחה.
מידע נוסף עבור משתמשי קצה ניתן למצוא במרכז העזרה של Nexus , במרכז העזרה של Pixel או במרכז העזרה של יצרן המכשיר שלך.
דף זה מתאר את המטרות של תוכנית האבטחה של אנדרואיד, מתאר את היסודות של ארכיטקטורת האבטחה של אנדרואיד, ועונה על השאלות הרלוונטיות ביותר עבור ארכיטקטי מערכות ומנתחי אבטחה. הוא מתמקד בתכונות האבטחה של פלטפורמת הליבה של אנדרואיד ואינו דן בבעיות אבטחה הייחודיות לאפליקציות ספציפיות, כגון אלו הקשורות לדפדפן או לאפליקציית SMS.
רקע כללי
אנדרואיד מספקת פלטפורמת קוד פתוח וסביבת אפליקציות למכשירים ניידים.
הסעיפים והעמודים שלהלן מתארים את תכונות האבטחה של פלטפורמת אנדרואיד. איור 1 ממחיש את מרכיבי האבטחה והשיקולים של הרמות השונות של ערימת תוכנת אנדרואיד. כל רכיב מניח שהרכיבים למטה מאובטחים כראוי. למעט כמות קטנה של קוד מערכת ההפעלה של אנדרואיד הפועל כשורש, כל הקוד שמעל ליבת לינוקס מוגבל על ידי ארגז החול של האפליקציה.
אבני הבניין העיקריות של פלטפורמת אנדרואיד הן:
- חומרת מכשיר: אנדרואיד פועלת על מגוון רחב של תצורות חומרה כולל טלפונים ניידים, טאבלטים, שעונים, מכוניות, טלוויזיות חכמות, קופסאות משחק OTT וממירים. אנדרואיד היא אגנוסטית למעבד, אבל היא מנצלת כמה יכולות אבטחה ספציפיות לחומרה כמו ARM eXecute-Never.
- מערכת הפעלה אנדרואיד: מערכת ההפעלה הליבה בנויה על גבי ליבת לינוקס. כל משאבי המכשיר, כמו פונקציות מצלמה, נתוני GPS, פונקציות Bluetooth, פונקציות טלפוניה וחיבורי רשת נגישים דרך מערכת ההפעלה.
- זמן ריצה של אפליקציות אנדרואיד: אפליקציות אנדרואיד נכתבות לרוב בשפת התכנות Java ומופעלות בזמן ריצה של אנדרואיד (ART). עם זאת, אפליקציות רבות, כולל שירותי ליבה ואפליקציות אנדרואיד, הן אפליקציות מקוריות או כוללות ספריות מקוריות. גם ART וגם אפליקציות מקוריות פועלות באותה סביבת אבטחה, הכלולה בתוך ארגז חול האפליקציות. אפליקציות מקבלים חלק ייעודי ממערכת הקבצים שבו הם יכולים לכתוב נתונים פרטיים, כולל מסדי נתונים וקבצים גולמיים.
אפליקציות אנדרואיד מרחיבות את הליבה של מערכת ההפעלה אנדרואיד. ישנם שני מקורות עיקריים לאפליקציות:
- אפליקציות מותקנות מראש: אנדרואיד כוללת קבוצה של אפליקציות מותקנות מראש כולל טלפון, דואר אלקטרוני, לוח שנה, דפדפן אינטרנט ואנשי קשר. אלה מתפקדים כיישומי משתמש והם מספקים יכולות מכשיר מרכזיות שאליהן ניתן לגשת לאפליקציות אחרות. אפליקציות מותקנות מראש עשויות להיות חלק מפלטפורמת הקוד הפתוח של אנדרואיד, או שהן עשויות להיות מפותחות על ידי יצרן מכשיר עבור מכשיר ספציפי.
- אפליקציות מותקנות על ידי משתמש: אנדרואיד מספקת סביבת פיתוח פתוחה התומכת בכל אפליקציה של צד שלישי. Google Play מציע למשתמשים מאות אלפי אפליקציות.
שירותי האבטחה של גוגל
גוגל מספקת קבוצה של שירותים מבוססי ענן הזמינים למכשירי אנדרואיד תואמים עם שירותי Google Mobile . שירותים אלו אמנם אינם חלק מפרויקט הקוד הפתוח של Android (AOSP), אך הם כלולים במכשירי אנדרואיד רבים. למידע נוסף על חלק מהשירותים הללו, ראה סקירת שנת 2018 של Android Security.
שירותי האבטחה העיקריים של Google הם:
- Google Play: Google Play הוא אוסף של שירותים המאפשרים למשתמשים לגלות, להתקין ולרכוש אפליקציות ממכשיר האנדרואיד שלהם או מהאינטרנט. Google Play מקל על מפתחים להגיע למשתמשי אנדרואיד וללקוחות פוטנציאליים. Google Play מספקת גם סקירת קהילה, אימות רישיון אפליקציה, סריקת אבטחה של אפליקציות ושירותי אבטחה אחרים.
- עדכוני אנדרואיד: שירות העדכונים של אנדרואיד מספק יכולות חדשות ועדכוני אבטחה למכשירי אנדרואיד נבחרים, כולל עדכונים דרך האינטרנט או דרך האוויר (OTA).
- שירותי אפליקציה: מסגרות המאפשרות לאפליקציות אנדרואיד להשתמש ביכולות ענן כגון ( גיבוי ) נתונים והגדרות של אפליקציות והודעות ענן למכשיר ( C2DM ) להעברת הודעות דחיפה.
- אמת אפליקציות: הזהיר או חסום אוטומטית את ההתקנה של אפליקציות מזיקות, וסרוק ללא הרף אפליקציות במכשיר, מזהיר או הסרה של אפליקציות מזיקות .
- SafetyNet: מערכת לזיהוי פריצות לשמירה על הפרטיות כדי לסייע ל-Google לעקוב, להפחית איומי אבטחה ידועים ולזהות איומי אבטחה חדשים.
- אישור SafetyNet: API של צד שלישי כדי לקבוע אם המכשיר תואם CTS. אישור יכול גם לזהות את אפליקציית Android המתקשרת עם שרת האפליקציה.
- מנהל מכשירי אנדרואיד: אפליקציית אינטרנט ואפליקציית אנדרואיד לאיתור מכשיר שאבד או נגנב.
סקירה כללית של תוכנית האבטחה
מרכיבי המפתח של תוכנית האבטחה של אנדרואיד כוללים:
- סקירת עיצוב: תהליך האבטחה של אנדרואיד מתחיל בתחילת מחזור חיי הפיתוח עם יצירת מודל ועיצוב אבטחה עשירים וניתנים להגדרה. כל תכונה מרכזית של הפלטפורמה נבדקת על ידי משאבי הנדסה ואבטחה, עם בקרות אבטחה מתאימות המשולבות בארכיטקטורה של המערכת.
- בדיקות חדירה וסקירת קוד: במהלך פיתוח הפלטפורמה, רכיבי אנדרואיד וקוד פתוח כפופים לסקירות אבטחה נמרצות. סקירות אלו מבוצעות על ידי צוות אבטחת אנדרואיד, צוות הנדסת אבטחת מידע של גוגל ויועצי אבטחה עצמאיים. מטרת הסקירות הללו היא לזהות חולשות ופגיעויות אפשריות הרבה לפני מהדורות גדולות, ולדמות את סוגי הניתוחים שמבצעים מומחי אבטחה חיצוניים עם השחרור.
- סקירת קוד פתוח וקהילה: AOSP מאפשרת סקירת אבטחה רחבה על ידי כל גורם מתעניין. אנדרואיד משתמשת גם בטכנולוגיות קוד פתוח שעברו סקירת אבטחה חיצונית משמעותית, כמו ליבת לינוקס. Google Play מספק פורום למשתמשים ולחברות לספק מידע על אפליקציות ספציפיות ישירות למשתמשים.
- תגובה לאירוע: אפילו עם אמצעי הזהירות הללו, בעיות אבטחה עלולות להתרחש לאחר המשלוח, וזו הסיבה שפרויקט אנדרואיד יצר תהליך תגובה אבטחה מקיף. חברי צוות האבטחה של אנדרואיד במשרה מלאה עוקבים אחר קהילת האבטחה הספציפית לאנדרואיד ובקהילת האבטחה הכללית לדיון על נקודות תורפה אפשריות וסוקרות באגי אבטחה שהוגשו במסד הנתונים של באגים של אנדרואיד. עם גילוי של בעיות לגיטימיות, לצוות אנדרואיד יש תהליך תגובה המאפשר צמצום מהיר של נקודות תורפה כדי להבטיח שהסיכון הפוטנציאלי לכל משתמשי האנדרואיד ממוזער. התגובות הנתמכות בענן יכולות לכלול עדכון פלטפורמת אנדרואיד (עדכוני AOSP), הסרת אפליקציות מ-Google Play והסרת אפליקציות ממכשירים בשטח.
- עדכוני אבטחה חודשיים: צוות האבטחה של Android מספק עדכונים חודשיים למכשירי Google Android ולכל שותפי ייצור המכשירים שלנו.
ארכיטקטורת אבטחת פלטפורמה
אנדרואיד שואפת להיות מערכת ההפעלה המאובטחת והשמישה ביותר עבור פלטפורמות ניידות על ידי שימוש מחדש בבקרות האבטחה המסורתיות של מערכת ההפעלה ל:
- הגן על נתוני האפליקציה והמשתמשים
- הגן על משאבי המערכת (כולל הרשת)
- ספק בידוד אפליקציה מהמערכת, אפליקציות אחרות ומהמשתמש
כדי להשיג מטרות אלו, אנדרואיד מספקת את תכונות האבטחה העיקריות הבאות:
- אבטחה חזקה ברמת מערכת ההפעלה דרך ליבת לינוקס
- ארגז חול אפליקציה חובה לכל האפליקציות
- תקשורת בין-תהליכית מאובטחת
- חתימת אפליקציה
- הרשאות המוגדרות על ידי אפליקציה ומוענקות למשתמש