Android, sektörde öncü güvenlik özelliklerini içerir ve Android platformunun ve ekosisteminin güvenliğini sağlamak için geliştiriciler ve cihaz uygulayıcılarla birlikte çalışır. Android platformu üzerinde ve çevresinde oluşturulan, bulut hizmetleri tarafından desteklenen uygulamalar ve cihazlardan oluşan güçlü bir ekosistemin etkinleştirilmesi için sağlam bir güvenlik modeli şarttır. Bu nedenle Android, geliştirme yaşam döngüsünün tamamında sıkı bir güvenlik programına tabi tutulmuştur.
Android, açık olacak şekilde tasarlanmıştır. Android uygulamaları, tüketicilere yenilik ve değer sunmak için platform üzerinden sunulan gelişmiş donanım ve yazılımın yanı sıra yerel ve sunulan verileri kullanır. Bu değeri elde etmek için platform, kullanıcıların, verilerin, uygulamaların, cihazın ve ağın gizliliğini, bütünlüğünü ve kullanılabilirliğini koruyan bir uygulama ortamı sunar.
Açık bir platformun güvenliğini sağlamak için güçlü bir güvenlik mimarisi ve sıkı güvenlik programları gerekir. Android, açık bir platformu destekleyecek kadar esnek olan ve platformun tüm kullanıcılarını korumaya devam eden çok katmanlı bir güvenlik sistemiyle tasarlanmıştır. Güvenlik sorunlarını bildirme ve güncelleme süreci hakkında bilgi için Güvenlik Güncellemeleri ve Kaynakları başlıklı makaleyi inceleyin.
Android, geliştiriciler için tasarlanmıştır. Güvenlik kontrolleri, geliştiricilerin üzerindeki yükü azaltmak üzere tasarlanmıştır. Güvenlik konusunda bilgili geliştiriciler, esnek güvenlik kontrollerini kolayca kullanabilir ve bunlara güvenebilir. Güvenlik konusuna fazla aşina olmayan geliştiriciler de güvenli varsayılan ayarlarla korunur.
Android, üzerine inşa edilebilecek kararlı bir platform sağlamanın yanı sıra geliştiricilere çeşitli şekillerde ek destek sunar. Android güvenlik ekibi, uygulamalardaki olası güvenlik açıklarını arar ve bu sorunları düzeltmenin yollarını önerir. Google Play'in yüklü olduğu cihazlarda Play Hizmetleri, uygulama iletişimlerinin güvenliğini sağlamak için kullanılan OpenSSL gibi kritik yazılım kitaplıklarına yönelik güvenlik güncellemeleri sunar. Android Güvenliği, geliştiricilerin geliştirdikleri platformlarda olası güvenlik sorunlarını bulmalarına yardımcı olan bir SSL testi aracı (nogotofail) yayınladı.
Android, güvenlik için temel donanım desteğinden de yararlanır. Örneğin, ARM TrustZone teknolojisi, şifreleme anahtarları için güvenli depolama alanı sağlamanın yanı sıra başlatma bütünlüğünün onaylanması için de kullanılır. DICE, Android başlatılmadan önce yüklenen donanım yazılımını ölçmek için kullanılır. Bu sayede, hem geliştiricilere hem de kullanıcılara zarar vermek için kullanılabilecek bilinen ve kritik güvenlik açıklarından etkilenmediği uzaktan doğrulanabilir.
Android uygulama geliştiricileri için daha fazla bilgiyi developer.android.com adresinde bulabilirsiniz.
Android, kullanıcılar için tasarlanmıştır. Kullanıcılara her uygulama tarafından istenen izinler hakkında görünürlük ve bu izinler üzerinde kontrol sağlanır. Bu tasarımda, saldırganların cihaz kullanıcılarını kötü amaçlı yazılım yüklemeye ikna etmek için sosyal mühendislik saldırıları gibi yaygın saldırıları ve Android'deki üçüncü taraf uygulamalarına yönelik saldırıları gerçekleştirmeye çalışacağı beklentisi yer alır. Android, bu saldırıların olasılığını azaltmak ve başarılı olması durumunda saldırının etkisini büyük ölçüde sınırlamak için tasarlanmıştır. Android güvenliği, cihaz kullanıcının eline geçtikten sonra da gelişmeye devam eder. Android, güvenlik güncellemeleri almaya devam eden tüm Android cihazlara yamalar sağlamak için iş ortakları ve kamu ile birlikte çalışır.
Son kullanıcılar için daha fazla bilgiyi Nexus Yardım Merkezi, Pixel Yardım Merkezi veya cihaz üreticinizin yardım merkezinde bulabilirsiniz.
Bu sayfada Android güvenlik programının hedefleri özetlenmekte, Android güvenlik mimarisinin temelleri açıklanmakta ve sistem mimarları ile güvenlik analistleri için en alakalı sorular yanıtlanmaktadır. Android'in temel platformunun güvenlik özelliklerine odaklanır ve tarayıcı veya SMS uygulamasıyla ilgili olanlar gibi belirli uygulamalara özgü güvenlik sorunlarından bahsetmez.
Arka plan
Android, mobil cihazlar için açık kaynaklı bir platform ve uygulama ortamı sağlar.
Aşağıdaki bölümlerde ve sayfalarda Android platformunun güvenlik özellikleri açıklanmaktadır. Şekil 1'de, Android yazılım yığınının çeşitli seviyelerindeki güvenlik bileşenleri ve dikkat edilmesi gereken noktalar gösterilmektedir. Her bileşen, aşağıdaki bileşenlerin uygun şekilde güvenli hale getirildiğini varsayar. Kök olarak çalışan küçük bir Android OS kodu dışında, Linux çekirdeğinin üzerindeki tüm kodlar uygulama korumalı alanı tarafından kısıtlanır.
1. şekil. Android yazılım yığını
Android platformunun temel yapı taşları şunlardır:
- Cihaz donanımı: Android; cep telefonları, tabletler, kol saatleri, otomobiller, akıllı TV'ler, OTT oyun kutuları ve set üstü kutular dahil olmak üzere çok çeşitli donanım yapılandırmalarında çalışır. Android işlemciden bağımsızdır ancak ARM eXecute-Never gibi donanıma özgü bazı güvenlik özelliklerinden yararlanır.
- Android işletim sistemi: Temel işletim sistemi, Linux çekirdeği üzerine kurulmuştur. Kamera işlevleri, GPS verileri, Bluetooth işlevleri, telefon işlevleri ve ağ bağlantıları gibi tüm cihaz kaynaklarına işletim sistemi üzerinden erişilir.
- Android Uygulama Çalışma Zamanı: Android uygulamaları genellikle Java programlama dilinde yazılır ve Android çalışma zamanında (ART) çalışır. Ancak, temel Android hizmetleri ve uygulamaları da dahil olmak üzere birçok uygulama yerel uygulamadır veya yerel kitaplıklar içerir. Hem ART hem de yerel uygulamalar, Uygulama Korumalı Alanı içinde yer alan aynı güvenlik ortamında çalışır. Uygulamalar, dosya sisteminde veritabanları ve ham dosyalar da dahil olmak üzere özel verileri yazabilecekleri özel bir bölüm elde eder.
Android uygulamaları, temel Android işletim sistemini genişletir. Uygulamaların iki temel kaynağı vardır:
- Önceden yüklenmiş uygulamalar: Android'de telefon, e-posta, takvim, web tarayıcı ve kişiler gibi bir dizi önceden yüklenmiş uygulama bulunur. Bu uygulamalar, kullanıcı uygulamaları olarak işlev görür ve diğer uygulamaların erişebileceği temel cihaz özelliklerini sağlar. Önceden yüklenmiş uygulamalar, açık kaynaklı Android platformunun bir parçası olabilir veya belirli bir cihaz için cihaz üreticisi tarafından geliştirilmiş olabilir.
- Kullanıcı tarafından yüklenen uygulamalar: Android, herhangi bir üçüncü taraf uygulamasını destekleyen açık bir geliştirme ortamı sunar. Google Play, kullanıcılara yüz binlerce uygulama sunar.
Google güvenlik hizmetleri
Google, Google Mobil Hizmetleri'nin yüklü olduğu uyumlu Android cihazlarda kullanılabilen bir dizi bulut tabanlı hizmet sunar. Bu hizmetler Android Açık Kaynak Projesi'nin (AOSP) bir parçası olmasa da birçok Android cihaza dahil edilmiştir. Bu hizmetlerden bazıları hakkında daha fazla bilgi için Android Güvenliği'nin 2018 Yılı Değerlendirmesi'ne göz atın.
Başlıca Google güvenlik hizmetleri şunlardır:
- Google Play: Google Play, kullanıcıların Android cihazlarından veya web'den uygulamaları keşfetmesine, yüklemesine ve satın almasına olanak tanıyan bir hizmetler koleksiyonudur. Google Play, geliştiricilerin Android kullanıcılarına ve potansiyel müşterilere ulaşmasını kolaylaştırır. Google Play ayrıca topluluk incelemesi, uygulama lisansı doğrulama, uygulama güvenlik taraması ve diğer güvenlik hizmetlerini de sunar.
- Android güncellemeleri: Android güncelleme hizmeti, web üzerinden veya kablosuz (OTA) güncellemeler de dahil olmak üzere belirli Android cihazlara yeni özellikler ve güvenlik güncellemeleri sunar.
- Uygulama hizmetleri: Android uygulamalarının, uygulama verilerini ve ayarlarını yedekleme ve push mesajlaşma için buluttan cihaza mesajlaşma (C2DM) gibi bulut özelliklerini kullanmasına olanak tanıyan çerçeveler.
- Uygulama Doğrulama: Zararlı uygulamaların yüklenmesi konusunda uyarı verir veya yüklenmesini otomatik olarak engeller. Cihazdaki uygulamaları sürekli olarak tarar, zararlı uygulamalar hakkında uyarı verir veya bu uygulamaları kaldırır.
- SafetyNet: Google'ın izlemesine yardımcı olmak, bilinen güvenlik tehditlerini azaltmak ve yeni güvenlik tehditlerini belirlemek için gizliliği koruyan bir izinsiz giriş algılama sistemi.
- SafetyNet Attestation: Cihazın CTS uyumlu olup olmadığını belirlemek için kullanılan üçüncü taraf API'si. Onay, uygulama sunucusuyla iletişim kuran Android uygulamasını da tanımlayabilir.
- Android Cihaz Yöneticisi: Kayıp veya çalınan cihazları bulmak için web uygulaması ve Android uygulaması.
Güvenlik programına genel bakış
Android Güvenlik Programı'nın temel bileşenleri şunlardır:
- Tasarım incelemesi: Android güvenlik süreci, geliştirme yaşam döngüsünün başlarında zengin ve yapılandırılabilir bir güvenlik modeli ve tasarımı oluşturularak başlar. Platformun her bir önemli özelliği mühendislik ve güvenlik kaynakları tarafından incelenir. Uygun güvenlik kontrolleri, sistemin mimarisine entegre edilir.
- Sızma testi ve kod incelemesi: Platformun geliştirilmesi sırasında, Android tarafından oluşturulan ve açık kaynaklı bileşenler sıkı güvenlik incelemelerine tabi tutulur. Bu incelemeler Android Güvenlik Ekibi, Google'ın Bilgi Güvenliği Mühendisliği Ekibi ve bağımsız güvenlik danışmanları tarafından yapılır. Bu incelemelerin amacı, zayıf noktaları ve olası güvenlik açıklarını büyük sürümlerden çok önce tespit etmek ve yayınlandıktan sonra harici güvenlik uzmanları tarafından gerçekleştirilen analiz türlerini simüle etmektir.
- Açık kaynak ve topluluk incelemesi: AOSP, ilgilenen herkesin kapsamlı bir güvenlik incelemesi yapmasına olanak tanır. Android ayrıca Linux çekirdeği gibi önemli harici güvenlik incelemelerinden geçmiş açık kaynak teknolojileri de kullanır. Google Play, kullanıcıların ve şirketlerin belirli uygulamalar hakkında doğrudan kullanıcılara bilgi vermesi için bir forum sağlar.
- Olaylara yanıt verme: Bu önlemlere rağmen, gönderimden sonra güvenlik sorunları ortaya çıkabilir. Bu nedenle Android projesi kapsamlı bir güvenlik yanıtı süreci oluşturmuştur. Tam zamanlı Android güvenlik ekibi üyeleri, Android'e özgü ve genel güvenlik topluluğunu olası güvenlik açıklarıyla ilgili tartışmalar için izler ve Android hata veritabanında bildirilen güvenlik hatalarını inceler. Android Ekibi, meşru sorunlar keşfedildiğinde tüm Android kullanıcıları için olası riskleri en aza indirmek amacıyla güvenlik açıklarının hızlı bir şekilde azaltılmasını sağlayan bir yanıt sürecine sahiptir. Bulut destekli bu yanıtlar arasında Android platformunu güncelleme (AOSP güncellemeleri), Google Play'den uygulamaları kaldırma ve sahadaki cihazlardan uygulamaları kaldırma yer alabilir.
- Aylık güvenlik güncellemeleri: Android güvenlik ekibi, Google Android cihazlara ve tüm cihaz üretimi ortaklarımıza aylık güncellemeler sağlar.
Platform güvenliği mimarisi
Android, geleneksel işletim sistemi güvenlik kontrollerini yeniden kullanarak mobil platformlar için en güvenli ve kullanılabilir işletim sistemi olmayı amaçlar:
- Uygulama ve kullanıcı verilerini koruma
- Sistem kaynaklarını (ağ dahil) koruma
- Uygulamanın sistemden, diğer uygulamalardan ve kullanıcıdan izole edilmesini sağlama
Android, bu hedeflere ulaşmak için aşağıdaki temel güvenlik özelliklerini sunar:
- Linux çekirdeği aracılığıyla işletim sistemi düzeyinde güçlü güvenlik
- Tüm uygulamalar için zorunlu uygulama sanal alanı
- Güvenli işlemler arası iletişim
- Uygulama imzalama
- Uygulama tarafından tanımlanan ve kullanıcı tarafından verilen izinler