Google Home akıllı hoparlöründeki bir hata, onu uzaktan kontrol etmek ve mikrofon beslemesine erişerek onu bir gözetleme cihazına dönüştürmek için kullanılabilecek bir arka kapı hesabının yüklenmesine izin verdi.
Bir araştırmacı sorunu keşfetti ve geçen yıl sorumlu bir şekilde Google’a bildirdiği için 107.500 ABD doları aldı. Bu haftanın başlarında araştırmacı, kusurdan nasıl yararlanılabileceğini göstermek için bulgu ve bir saldırı senaryosu hakkında teknik ayrıntılar yayınladı.
Uzlaşma süreci
Araştırmacı, kendi Google Home mini hoparlörüyle deneyler yaparken, Google Home uygulaması kullanılarak eklenen yeni hesapların bulut API’si aracılığıyla ona uzaktan komutlar gönderebileceğini keşfetti.
Araştırmacı, bir Nmap taraması kullanarak Google Home’un yerel HTTP API’si için bağlantı noktasını buldu ve kullanıcı yetkilendirme belirtecini kapmayı umarak şifrelenmiş HTTPS trafiğini yakalamak için bir proxy kurdu.
Araştırmacı, hedef cihaza yeni bir kullanıcı eklemenin, yerel API’sinden cihaz adı, sertifika ve “bulut kimliği” gerektiren iki adımlı bir süreç olduğunu keşfetti. Bu bilgilerle Google sunucusuna bir bağlantı isteği gönderebilirler.
Analist, hedef bir Google Home cihazına sahte bir kullanıcı eklemek için bağlantı sürecini, yerel cihaz verilerinin dışarı sızmasını otomatikleştiren ve bağlantı isteğini yeniden üreten bir Python komut dosyasında uyguladı.
Saldırı, araştırmacının blogunda şu şekilde özetleniyor:
- Saldırgan, kurbanı Google Home’un kablosuz yakınında gözetlemek istiyor (ancak kurbanın Wi-Fi şifresine sahip DEĞİL).
- Saldırgan, Google Inc. ile ilişkili ön eklere sahip MAC adreslerini dinleyerek kurbanın Google Ana Sayfasını keşfeder (örn. E4:F0:42).
- Saldırgan, cihazın ağından bağlantısını kesmek ve kurulum moduna girmesini sağlamak için deauth paketleri gönderir.
- Saldırgan, cihazın kurulum ağına bağlanır ve cihaz bilgilerini (ad, sertifika, bulut kimliği) ister.
- Saldırgan internete bağlanır ve elde edilen cihaz bilgilerini hesabını kurbanın cihazına bağlamak için kullanır.
- Saldırgan artık kurbanı internet üzerinden Google Home üzerinden gözetleyebilir (artık cihaza yakın olmasına gerek yoktur).
Araştırmacı, yukarıdaki eylemler için GitHub’da üç PoC yayınladı. Ancak bunlar, en son üretici yazılımı sürümünü çalıştıran Google Home cihazlarında çalışmamalıdır.
PoC’ler, işleri sadece sahte bir kullanıcı yerleştirmekten bir adım öteye taşıyor ve mikrofon üzerinden casusluk yapmayı, kurbanın ağında rastgele HTTP istekleri yapmayı ve cihazda rastgele dosyaları okuma/yazmayı mümkün kılıyor.
Olası çıkarımlar
Hedef cihaza bağlı hileli bir hesaba sahip olmak, akıllı anahtarları kontrol etme, çevrimiçi satın alma işlemleri yapma, kapıların ve araçların uzaktan kilidini açma veya akıllı kilitler için kullanıcının PIN’ini gizlice zorlama gibi işlemleri Google Home hoparlörü aracılığıyla gerçekleştirmeyi mümkün kılar.
Daha endişe verici bir şekilde, araştırmacı “çağrıyı” kötüye kullanmanın bir yolunu buldu. [phone number]” komutunu, belirli bir zamanda mikrofonu etkinleştiren, saldırganın numarasını arayan ve canlı mikrofon akışı gönderen kötü amaçlı bir rutine ekleyerek.
Arama sırasında, cihazın LED’i maviye döner ve bu, bazı etkinliklerin gerçekleştiğinin tek göstergesidir. Kurban bunu fark ederse, cihazın ürün yazılımını güncellediğini varsayabilir. Standart mikrofon aktivasyon göstergesi, aramalar sırasında olmayan, yanıp sönen bir LED’dir.
Son olarak, güvenliği ihlal edilmiş akıllı hoparlörde medya oynatmak, yeniden adlandırmak, yeniden başlatmaya zorlamak, kayıtlı Wi-Fi ağlarını unutmaya zorlamak, yeni Bluetooth veya Wi-Fi eşleştirmelerini zorlamak ve daha fazlasını yapmak da mümkündür.
Google düzeltmeleri
Analist, sorunları Ocak 2021’de keşfetti ve Mart 2021’de ek ayrıntılar ve PoC’ler gönderdi. Google, Nisan 2021’de tüm sorunları düzeltti.
Yama, hesap bağlantılarını işlemek için Ana Sayfa’ya eklenmemiş tüm girişimleri engelleyen yeni bir davet tabanlı sistem içerir.
Google Home’un kimlik doğrulamasını kaldırmak hala mümkündür, ancak bu, yeni bir hesabı bağlamak için kullanılamaz, dolayısıyla temel cihaz verilerini sızdıran yerel API’ye de erişilemez.
“çağrıya gelince [phone number]” komutu, Google rutinler aracılığıyla uzaktan başlatılmasını önlemek için bir koruma ekledi.
Google Home’un 2016’da piyasaya sürüldüğünü, planlanmış rutinlerin 2018’de eklendiğini ve Local Home SDK’nın 2020’de tanıtıldığını belirtmekte fayda var, bu nedenle sorunu Nisan 2021’den önce bulan bir saldırganın avantaj sağlamak için bolca zamanı olabilirdi.