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ükleyip kaydedilmiş bir ağda alan adını ayarlayarak bir kurumsal (EAP) ağa güvenmelerine olanak tanır. TOFU, bir kullanıcı kurumsal ağa ilk kez bağlandığında cihazın kimliği doğrulanmamış bir ortak anahtar almasına ve sonraki bağlantılar için anahtarı tutması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 gereklilik, kullanıcıların bu tür ağlar için CA sertifikası yüklemeleri gerektiğinden bir engel oluşturuyordu. 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, bir kullanıcı önceden yüklenmiş bir kimliği doğrulanmış ortak 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 Kullanım Şartları'nı destekleyip desteklemediğini gösterir.WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: TOFU'yu etkinleştirir.WifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: TOFU'nun etkin olup olmadığını 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