15Jul
Android cihazınızı köklendirme, daha geniş bir uygulama yelpazesine ve Android sistemine daha derin bir erişime olanak tanır. Ancak, Google'ın Android Pay gibi bazı uygulamaları köklü bir cihazda hiç çalışmayacak.
Google, cihazınızın köklü olup olmadığını tespit etmek için SafetyNet adlı bir araç kullanır ve bu özelliklere erişimi engeller. Google tek değil, ya bol miktarda üçüncü parti uygulamalar da köklü Android cihazlarda çalışmaz, ancak köklerin varlığını başka yollarla kontrol edebilirler.
SafetyNet: Android Telefonunuzu Artırttı Google Nasıl Biliyor?
Android cihazları, Google onaylı Android cihazlarda yüklü olan Google Play Hizmetleri katmanının bir parçası olan "SafetyNet API" sunuyor. Google'a göre, bu API "bir Android cihazın sağlık ve güvenliğini değerlendirmenize yardımcı olan Google hizmetlerine erişim sağlar".Bir Android geliştiricisi iseniz, uyguladığınız cihazın kurcalandığını kontrol etmek için uygulamanızda bu API'yi arayabilirsiniz.
Bu SafetyNet API, bir kullanıcının kökleştiği, özel bir ROM çalıştırdığı veya düşük seviyeli malware bulaşmış olup olmadığı gibi bir aygıtın müdahale edilip edilmediğini kontrol etmek için tasarlanmıştır.
Google'ın Play Store'u ve diğer uygulamaları yüklenen cihazlar Google'ın Android "Uyumluluk Testi Süiti" ni geçmelidir. Bir cihazı köklendirme veya özel ROM kurma, bir cihazın "CTS Uyumlu" olmasını engeller. SafetyNet API'sının köklü iseniz bu şekilde anlayabileceği şekilde-sadece CTS uyumluluğunu kontrol eder. Benzer şekilde, Google'ın uygulamalarına hiç gelmeyen bir Android cihazı ederseniz( örneğin, Çin'de bir fabrikadan doğrudan gönderilen 20 $ tabletlerden birisi gibi), köklendirilmemiş olsanız bile "CTS uyumlu" olarak kabul edilmez..
Bu bilgileri almak için Google Play Hizmetleri, "snet" adlı bir programı indirir ve cihazınızdaki arka planda çalıştırır. Program, verilerinizi cihazınızdan toplar ve düzenli olarak Google'a gönderir. Google, bu bilgiyi, daha geniş kapsamlı Android ekosisteminin resmini alarak cihazınızın yazılımının değiştirilip değiştirilmediğini belirlemek gibi çeşitli amaçlarla kullanmaktadır. Google tam olarak ne snet'in aradıklarını açıklamıyor ancak muhtemelen snet, sistem bölümünüzün fabrika durumundan değiştirilip değiştirilmediğini denetler.
SafetyNet Yardımcı Örnek veya SafetyNet Oyun Alanı gibi bir uygulama indirerek cihazınızın SafetyNet durumunu kontrol edebilirsiniz. Uygulama, Google'ın SafetyNet hizmetine cihazınızın durumunu sorar ve size Google sunucusundan gelen yanıtı söyleyecektir.
Daha teknik ayrıntılar için, bir yazılım güvenlik şirketi olan Cigital'teki teknik stratejist John Kozyrakis tarafından yazılan bu blog yazısını okuyun. SafetyNet'e girdi ve nasıl çalıştığına dair daha fazla bilgi verdi.
Uygulama Başına Gelmektedir
SafetyNet, uygulama geliştiricileri için isteğe bağlıdır ve uygulama geliştiricileri bunu kullanmayı seçebilir veya kullanamazlar. SafetyNet, bir uygulamanın geliştiricisi köklü cihazlarda çalışmasını istemiyorsa yalnızca bir uygulamanın çalışmasını önler.
Çoğu uygulama, SafetyNet API'sını hiç kontrol etmez. SafetyNet API'sını kontrol eden bir uygulama bile( yukarıda test uygulamaları gibi) kötü bir yanıt aldıysalar çalışmayı bırakmazlar. Uygulamanın geliştiricisi, cihazınızın yazılımının değiştirildiğini öğrenmesi durumunda, SafetyNet API'sını kontrol etmeli ve uygulamanın çalışmamasını sağlaması gerekir. Google'ın kendi Android Pay uygulaması bu konuda iyi bir örnektir.
Android Pay Rooted Aygıtlarda Çalışmıyor
Google'ın Android Pay mobil ödeme çözümü, köklü Android aygıtlarında hiç çalışmıyor. Başlatmaya çalışın; yalnızca "Android Pay kullanılamaz" diyerek bir mesaj görürsünüz. Google, cihazınızın veya onun üzerinde çalışan yazılımın Android uyumlu olduğunu doğrulayamıyor "
Bu, tabii ki özel bir ROM çalıştırmanın kök salması değil, aynı zamanda bu gereksinimden de uzak duracaktır. SafetyNet API, cihazın gelmediği özel bir ROM kullanıyorsanız bunun "Android uyumlu" olmadığını iddia edecektir.
Unutmayın, bu sadece kökleri tespit etmez. Cihazınız, Android Pay ve diğer uygulamalarda casusluk yapma imkânı bulunan bazı sistem düzeyinde kötü amaçlı yazılım bulaşmışsa, SafetyNet API'sı da Android Pay'ın çalışmasını önleyecektir; bu da iyi bir şeydir.
Cihazınızı köklendirme, Android'in normal güvenlik modelini bozuyor. Android Pay, normal olarak ödeme verilerinizi Android'in sanal alanı oluşturma özelliklerini kullanarak korur, ancak uygulamalar köklü bir cihazdaki sanal alandan kopabilir. Google, kök salmışsa veya bilinmeyen bir özel ROM çalıştırıyorsa Android Pay'ın belirli bir cihazda ne kadar güvenli olabileceğini bilmenin hiçbir yolu yok, bu nedenle bunu engelliyorlar. Bir Android Ödeme mühendisi, daha fazlasını okumak için merak ediyorsanız, XDA Geliştiriciler forumundaki sorunu açıkladı.
Diğer Uygulamalar Uygulamalar Root Algılayabilir
SafetyNet, uygulamanın köklü bir cihazda çalışıp çalışmadığını kontrol edebilmesinin tek bir yoludur.Örneğin, Samsung cihazları KNOX adlı bir güvenlik sistemini içeriyor. Cihazınızı köklendirirseniz, KNOX güvenliği devre dışı bırakılır. Samsung'un kendi mobil ödemeler uygulaması olan Samsung Pay, köklü cihazlarda çalışmayı reddedecek. Samsung bunun için KNOX kullanıyor ancak SafetyNet'i de kullanıyor olabilir.
Benzer şekilde, bol miktarda üçüncü parti uygulamalar bunları kullanmanızı engelliyor ve hepsi SafetyNet kullanmıyor. Bilinen kök uygulama ve işlemlerin bir aygıtta olup olmadığını kontrol edebilirler.
Bir cihaz köklü olduğunda çalışmayan güncel bir uygulama listesini bulmak zor. Bununla birlikte, RootCloak birkaç liste sunar. Bu listeler güncel olabilir, ancak bulabileceğimiz en iyi listelerdir. Birçoğu, bankacılık bilgilerinizin diğer uygulamalar tarafından yakalanmasını önlemek amacıyla, köklü telefonlarda erişimi engelleyen bankacılık ve diğer mobil cüzdan uygulamaları.Video yayın hizmetleri için olan uygulamalar, bir köklü cihazda bir çeşit DRM önlemi olarak çalışmaya ve korunan bir video akışını kaydettirmeye çalışmamayı reddedebilir.
Bazı Uygulamalar Kandırılabilir
Google, SafetyNet ile kedi-fare oyunu oynuyor ve insanların etrafında dolaşmalarını önlemeye çalışarak sürekli güncelliyor.Örneğin, Android geliştiricisi Chainfire, "sistemsiz kök" olarak bilinen sistem bölümünü değiştirmeden Android aygıtlarını kökten yeni bir yöntem yarattı.SafetyNet başlangıçta bu tür cihazları kurcalamaya ve Android Pay uygulamasını saptamamıştır ancak SafetyNet bu yeni köklendirme yöntemini tespit etmek için güncellendi. Bu, Android Pay'ın artık sistemsiz kök ile birlikte çalıştığı anlamına gelir.
Bir uygulamanın kök erişimini nasıl kontrol ettiğine bağlı olarak, onu kandırmak mümkün olabilir.Örneğin, bildirildiğine göre, bazı Samsung cihazlarını, Samsung Pay'ı kullanmaya devam etmenize izin verecek şekilde KNOX güvenliğini açmadan kurmaya yönelik yöntemler vardır.
Sadece sisteminizdeki kök uygulamalarını kontrol eden uygulamalar söz konusu olduğunda, RootCloak adlı bir Xposed Framework modülü vardır; bu modül, onları zaten çalışmaya zorlamanızı sağlar. Bu, DirecTV GenieGo, Best Buy CinemaNow ve Flixster'ın yaptığı filmler gibi normalde köklü cihazlarda çalışmayan uygulamalarla çalışır. Ancak, eğer bu uygulamalar Google'ın SafetyNet'i kullanılarak güncellenmişse, bu şekilde kandırmak o kadar kolay olmazdı.
Çoğu uygulama, cihazınızı köklediğinizde normal çalışmaya devam edecektir. Mobil ödeme uygulamaları, diğer bazı bankacılık ve finansal uygulamalardaki gibi büyük istisnadır.Ücretli video yayın hizmetleri bazen de videolarını izlemenizi engellemeye çalışır.
İhtiyacınız olan bir uygulama köklü cihazınızda çalışmazsa, cihazınızı kullanmak üzere kökten sökebilirsiniz. Uygulamanız, cihazınızı güvenli, fabrika çıkışına geri döndürdükten sonra çalışmalıdır.
Resim Kredisi: Danny Choo Flickr