שיטות מומלצות לאבטחת רשתות

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

שקעי הקשבה מאובטחים

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

  • במכשירי Android צריך לצמצם את מספר שקעי ההאזנה לאינטרנט שהם חושפים, במיוחד בזמן האתחול או כברירת מחדל. כברירת מחדל, אף שקע לא אמור להאזין באינטרנט בזמן האתחול.
    • תהליכים ברמה הבסיסית (root) ותהליכים שבבעלות המזהה הייחודי של המערכת (UID) לא צריכים לחשוף שקעי הקשבה.
  • צריך להיות אפשרי להשבית את שקעי ההאזנה בלי עדכון OTA. אפשר לבצע זאת באמצעות שינוי בהגדרות השרת או במכשיר המשתמש.
  • בשקעים מקומיים שמשתמשים ב-IPC, האפליקציות צריכות להשתמש בשקע דומיין של UNIX עם גישה מוגבלת לקבוצה. יוצרים מתאר קובץ ל-IPC ומגדירים לו את הרשאות הקריאה והכתיבה (RW) לקבוצת UNIX ספציפית. כל אפליקציות הלקוח צריכות להיות בקבוצת ה-UNIX הזו.
  • במכשירים מסוימים עם כמה מעבדים (לדוגמה, רדיו/מודם נפרד מהמעבד של האפליקציה) נעשה שימוש בשקעי רשת כדי לתקשר בין המעבדים. במקרים כאלה, שקע הרשת שמשמש לתקשורת בין מעבדים חייב להשתמש בממשק רשת מבודד כדי למנוע גישה מאפליקציות לא מורשות במכשיר (כלומר, צריך להשתמש ב-iptables כדי למנוע גישה מאפליקציות אחרות במכשיר).
  • הדמיונים (daemons) שמטפלים ביציאות להאזנה צריכים להיות עמידים בפני נתונים בפורמט שגוי. צריך לבצע בדיקת fuzz נגד היציאה באמצעות לקוח לא מורשה, ובמידת האפשר, לקוח מורשה. דיווח על באגים כדי לעקוב אחרי קריסות.

חבילה לבדיקות תאימות של Android (CTS) כוללת בדיקות שמאתרות יציאות הקשבה פתוחות.

השבתת adb

Android Debug Bridge‏ (adb) הוא כלי חשוב לפיתוח ולניפוי באגים, אבל הוא מיועד לשימוש בסביבה מבוקרת ומאובטחת, ואין להפעיל אותו לשימוש כללי.

  • מוודאים ש-adb מושבת כברירת מחדל.
  • מוודאים שהמשתמש צריך להפעיל את adb לפני שהוא מקבל חיבורים.