במכשירים עם Android מגרסה 13 ואילך, מערכת Android תומכת בגישה לאימות Trust on First Use (TOFU) (RFC7435). הגישה הזו מאפשרת למשתמשים לבטוח ברשת ארגונית (EAP) על ידי התקנת רשות אישורים ברמה הבסיסית (root) שבה השרת משתמש והגדרת שם הדומיין שלה ברשת שמורה. TOFU מאפשר למכשיר לקבל מפתח ציבורי לא מאומת כשמשתמש מתחבר לרשת ארגונית בפעם הראשונה, ולשמור את המפתח לחיבורים הבאים.
רקע
בהשוואה לרשתות אישיות שדורשות רק סיסמה, רשתות ארגוניות משתמשות באימות PKI בתשתית של מפתחות ציבוריים, המחייב את הלקוח להתקין מראש אישורים. ב-Android 11 ואילך, משתמשים יכולים לבחור באפשרות לא לאמת לאישור ה-CA של השרת בהגדרות הרשת, כדי לעקוף את האימות של האישור בצד השרת. עם זאת, כדי לשפר את האבטחה ולעמוד במפרט WPA R2, ב-Android 12 הוספנו דרישה לרשתות ארגוניות שתכלול אימות של אישורי השרת. הדרישה הנוספת הזו יצרה מכשול בפני משתמשים מכיוון שהם צריכים להתקין אישור CA ברשתות כאלה. באמצעות TOFU, משתמשים יכולים להתחבר לרשת ארגונית מבוססת-PKI פשוט על ידי אישור של רשות האישורים ברמה הבסיסית.
התנהגות התכונה
מכשירים שתומכים ב-TOFU מציגים את ההתנהגות הבאה כשמשתמש מתחבר לרשת ארגונית שאין בה מפתח ציבורי מאומת שכבר מותקן.
התחברות לרשת חדשה באמצעות הכלי לבחירת רשתות Wi-Fi
אפשר לבחור רשת ארגונית חדשה בבורר ה-Wi-Fi.
במכשיר תוצג תיבת דו-שיח (איור 1) כדי לאשר שהרשת מהימנה.
מקישים על כן, התחברות כדי לאשר את החיבור לרשת, או על לא, לא מתחברים כדי לדחות אותו.
אם מקישים על כן, חיבור, המכשיר מגדיר באופן אוטומטי את הפרמטרים של האבטחה, מתחבר לרשת ומפעיל את החיבור האוטומטי לרשת.
אם מקישים על לא, לא מתחברים, המכשיר יתנתק מהרשת והחיבור האוטומטי לרשת יושבת.
איור 1. תיבת דו-שיח לתכונה TOFU
התחברות לרשת קיימת כשהחיבור האוטומטי מופעל
כשמתחברים לרשת ארגונית שהופעלה בה חיבור אוטומטי אבל אין לה אישור CA חוקי, המכשיר מתחבר באופן אוטומטי ומציג התראה במיקום קבוע (ללא אפשרות סגירה).
מקישים על ההתראה.
במכשיר תוצג תיבת דו-שיח (איור 1) כדי לאשר שהרשת מהימנה.
מקישים על כן, התחברות כדי לאשר את החיבור לרשת, או על לא, לא מתחברים כדי לדחות אותו.
אם מקישים על כן, חיבור, המכשיר מגדיר באופן אוטומטי את הפרמטרים של האבטחה, מתחבר לרשת ומפעיל את החיבור האוטומטי לרשת.
אם מקישים על לא, אני לא רוצה להתחבר, המכשיר יתנתק מהרשת וישבית את החיבור האוטומטי לרשת.
הטמעה
כדי לתמוך בתכונה TOFU, צריך להטמיע את ה-HALs של המבקש שזמינים בפרויקט Android Open Source Project (AOSP) בכתובת /hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant
.
ממשקי ה-API הציבוריים הבאים זמינים ב-Android 13 לשימוש באפליקציות:
WifiManager#isTrustOnFirstUseSupported()
: מציין אם המכשיר תומך ב-TOFU.WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: הפעלת TOFU.WifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: מציין אם התכונה TOFU מופעלת.
אימות
כדי לאמת את ההטמעה של TOFU במכשיר, אפשר להשתמש בבדיקות הבאות:
- CTS:
CtsWifiTestCases
- VTS:
VtsHalWifiSupplicantStaNetworkTargetTest