Android 13 veya sonraki sürümleri çalıştıran cihazlarda Android, ilk kullanımda güven (TOFU) kimlik doğrulama yaklaşımını (RFC7435) destekler. Bu yaklaşım, kullanıcıların sunucu tarafından kullanılan kök CA'yı yükleyerek ve kaydedilmiş bir ağda alan adını ayarlayarak bir kurumsal (EAP) ağa güvenmelerine olanak tanır. TOFU, kullanıcı bir kurumsal ağa ilk kez bağlandığında cihazın kimliği doğrulanmamış bir herkese açık anahtar almasına ve sonraki bağlantılar için anahtarı saklamasına olanak tanır.
Arka plan
Yalnızca şifre gerektiren kişisel ağlara kıyasla kurumsal ağlar, istemcinin sertifikaları önceden yüklemesini gerektiren ortak anahtar altyapısı (PKI) kimlik doğrulamasını kullanır. Android 11 veya önceki sürümlerde kullanıcılar, sunucu tarafı sertifikasının doğrulamasını atlayarak ağ ayarlarında sunucu CA sertifikası için Doğrulamayın seçeneğini belirleyebilir. Ancak Android 12, güvenliği güçlendirmek ve WPA R2 spesifikasyonuna uymak için kurumsal ağların sunucu sertifikası doğrulamasına sahip olması şartını getirdi. Bu ek şart, bu tür ağlar için CA sertifikası yüklemeleri gerektiğinden kullanıcılar için bir engel oluşturdu. TOFU, kullanıcıların yalnızca kök CA'sını kabul ederek PKI tabanlı bir kurumsal ağa bağlanmasına olanak tanır.
Özellik davranışı
TOFU'yu destekleyen cihazlar, kullanıcı önceden yüklenmiş kimliği doğrulanmış bir herkese açık anahtara sahip olmayan bir kurumsal ağa bağlandığında aşağıdaki davranışı gösterir.
Kablosuz ağ seçici aracılığıyla yeni ağa bağlanma
Kablosuz ağ seçicide yeni bir kurumsal ağ seçin.
Cihaz, ağın güvenilir olup olmadığını onaylamak için bir iletişim kutusu (Şekil 1) gösterir.
Ağ bağlantısını kabul etmek için Evet, bağlan'a, reddetmek içinse Hayır, bağlanma'ya dokunun.
Evet, bağlan'a dokunduğunuzda cihaz, güvenlik parametrelerini otomatik olarak yapılandırır, ağa bağlanır ve ağ için otomatik bağlanma özelliğini etkinleştirir.
Hayır, bağlanma'ya dokunursanız cihazın ağ bağlantısı kesilir ve ağ için otomatik bağlantı devre dışı bırakılır.
Şekil 1. TOFU özelliği için iletişim kutusu
Otomatik bağlantı etkinken mevcut ağa bağlanma
Otomatik bağlantının etkin olduğu ancak geçerli bir CA sertifikası bulunmayan bir kurumsal ağa bağlanırken cihaz otomatik olarak bağlanır ve ardından kalıcı (kapatılamayan) bir bildirim gösterir.
Bildirime dokunun.
Cihaz, ağın güvenilir olup olmadığını onaylamak için bir iletişim kutusu (Şekil 1) gösterir.
Ağ bağlantısını kabul etmek için Evet, bağlan'a, reddetmek içinse Hayır, bağlanma'ya dokunun.
Evet, bağlan'a dokunduğunuzda cihaz, güvenlik parametrelerini otomatik olarak yapılandırır, ağa bağlanır ve ağ için otomatik bağlanma özelliğini etkinleştirir.
Hayır, bağlanma'ya dokunursanız cihazın ağ bağlantısı kesilir ve ağ için otomatik bağlantı devre dışı bırakılır.
Uygulama
TOFU özelliğini desteklemek için /hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant
adresindeki Android Açık Kaynak Projesi'nde (AOSP) sağlanan istemci HAL'lerini uygulayın.
Android 13'te, uygulamaların kullanabileceği aşağıdaki herkese açık API'ler mevcuttur:
WifiManager#isTrustOnFirstUseSupported()
: Cihazın TOFU'yu destekleyip desteklemediğini belirtir.WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: TOFU'yu etkinleştirir.WifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: TOFU'nun etkinleştirilip etkinleştirilmediğini gösterir.
Doğrulama
Cihazınızda TOFU'nun uygulanmasını doğrulamak için aşağıdaki testleri kullanın:
- CTS:
CtsWifiTestCases
- VTS:
VtsHalWifiSupplicantStaNetworkTargetTest