Güvenlik Güncellemeleri ve Kaynaklar

Android güvenlik ekibi, Android platformunda ve Android cihazlarla birlikte gelen temel Android uygulamalarının çoğunda keşfedilen güvenlik açıklarının yönetilmesinden sorumludur.

Android güvenlik ekibi, dahili araştırmalar yoluyla güvenlik açıklarını buluyor ve ayrıca üçüncü tarafların bildirdiği hatalara da yanıt veriyor. Dış hataların kaynakları arasında güvenlik açığı formu aracılığıyla bildirilen sorunlar, yayınlanmış ve önceden yayınlanmış akademik araştırmalar, açık kaynak proje sağlayıcıları, cihaz üreticisi ortaklarımızdan gelen bildirimler ve bloglarda veya sosyal medyada yayınlanan, kamuya açıklanmış sorunlar yer alır.

Güvenlik sorunlarını bildirme

Herhangi bir geliştirici, Android kullanıcısı veya güvenlik araştırmacısı, güvenlik açığı formunu kullanarak Android güvenlik ekibine olası güvenlik sorunlarını bildirebilir.

Güvenlik sorunları olarak işaretlenen hatalar dışarıdan görülemez ancak sorun değerlendirildikten veya çözüldükten sonra sonunda görünür hale getirilebilir. Bir güvenlik sorununu çözmek için bir yama veya Uyumluluk Testi Paketi (CTS) testi göndermeyi planlıyorsanız lütfen bunu hata raporuna ekleyin ve kodu AOSP'ye yüklemeden önce yanıt bekleyin.

Hataların tetiklenmesi

Bir güvenlik açığını ele alırken ilk görev, hatanın ciddiyetini ve Android'in hangi bileşeninin etkilendiğini belirlemektir. Önem derecesi, sorunun nasıl önceliklendirileceğini belirler ve bileşen, hatayı kimin düzelteceğini, kime bildirileceğini ve düzeltmenin kullanıcılara nasıl dağıtılacağını belirler.

Bağlam türleri

Bu tablo, donanım ve yazılım güvenliği bağlamlarının tanımlarını kapsar. Bağlam, genellikle işlediği verilerin veya içinde çalıştığı alanın hassasiyetine göre tanımlanabilir. Tüm güvenlik bağlamları tüm sistemlere uygulanamaz. Bu tablo en az ayrıcalıklıdan en ayrıcalıklıya doğru sıralanmıştır.

Bağlam türü Tip tanımı
Kısıtlı bağlam Yalnızca en düşük izinlerin sağlandığı sınırlı bir yürütme ortamı.

Örneğin, korumalı alan ortamında güvenilmeyen verileri işleyen güvenilir uygulamalar.
Ayrıcalıksız bağlam Ayrıcalıksız kodun beklediği tipik bir yürütme ortamı.

Örneğin, untrusted_app_all özniteliğine sahip bir SELinux etki alanında çalışan bir Android uygulaması.
Ayrıcalıklı bağlam Yükseltilmiş izinlere erişebilen, birden fazla kullanıcının PII'sini yönetebilen ve/veya sistem bütünlüğünü koruyan ayrıcalıklı bir yürütme ortamı.

Örneğin, SELinux untrusted_app etki alanı tarafından yasaklanacak yeteneklere sahip veya privileged|signature izinlerine erişimi olan bir Android uygulaması.
İşletim sistemi çekirdeği İşlevsellik:
  • çekirdeğin bir parçasıdır
  • çekirdekle aynı CPU bağlamında çalışır (örneğin, aygıt sürücüleri)
  • çekirdek belleğine doğrudan erişime sahiptir (örneğin, aygıttaki donanım bileşenleri)
  • komut dosyalarını bir çekirdek bileşenine (örneğin, eBPF) yükleme yeteneğine sahiptir
  • çekirdek eşdeğeri olarak kabul edilen bir avuç kullanıcı hizmetinden biridir ( apexd , bpfloader , init , ueventd ve vold gibi).
Güvenilir Donanım Tabanı (THB) Genellikle SoC üzerinde bulunan ve cihazın temel kullanım durumları için kritik öneme sahip işlevsellik sağlayan ayrı donanım bileşenleri (hücresel temel bantlar, DSP'ler, GPU'lar ve ML işlemciler gibi).
Önyükleyici Zinciri Aygıtı önyükleme sırasında yapılandıran ve ardından kontrolü Android işletim sistemine aktaran bir bileşen.
Güvenilir Yürütme Ortamı (TEE) Düşman bir işletim sistemi çekirdeğinden bile korunacak şekilde tasarlanmış bir bileşen (örneğin, TrustZone ve Sanal Makineleri işletim sistemi çekirdeğinden koruyan pKVM gibi hipervizörler).
Güvenli Yerleşim / Güvenli Öğe (SE) Güvenli Öğelere Giriş bölümünde tanımlandığı gibi, cihazdaki diğer tüm bileşenlerden ve fiziksel saldırılardan korunmak üzere tasarlanmış isteğe bağlı bir donanım bileşeni.

Buna bazı Android cihazlarda bulunan Titan-M çipi de dahildir.

Şiddet

Bir hatanın ciddiyeti genellikle bir hatanın başarıyla kullanılması durumunda meydana gelebilecek potansiyel zararı yansıtır. Şiddetini belirlemek için aşağıdaki kriterleri kullanın.

Değerlendirme Başarılı sömürünün sonucu
Kritik
  • TEE veya SE'de rastgele kod yürütme
  • Güvenlikle ilgili yazılım veya donanım bileşenlerinin arızalanmasını önlemek için tasarlanmış yazılım mekanizmalarının atlanması (örneğin termal korumalar)
  • Uzaktan hizmet kimlik doğrulaması için kullanılan hassas kimlik bilgilerine uzaktan erişim (örneğin, hesap şifreleri veya taşıyıcı belirteçleri)
  • Kullanıcı etkileşimi olmadan hücresel temel bant bağlamı içinde uzaktan rastgele kod yürütme (örneğin, hücresel radyo hizmetindeki bir hatadan yararlanma)
  • Ayrıcalıklı bir bağlamda, önyükleyici zincirinde, THB'de veya işletim sistemi çekirdeğinde uzaktan rastgele kod yürütme
  • Paket kurulumunda veya eşdeğer davranışta kullanıcı etkileşimi gereksinimlerinin uzaktan atlanması
  • Temel geliştirici, güvenlik veya gizlilik ayarları için kullanıcı etkileşimi gereksinimlerinin uzaktan atlanması
  • Uzaktan kalıcı hizmet reddi (kalıcı, tüm işletim sisteminin yeniden başlatılmasını veya fabrika ayarlarına sıfırlanmasını gerektirir)
  • Uzaktan güvenli önyükleme bypass'ı
  • SE'deki zayıf anahtarlar tarafından etkinleştirilen erişim de dahil olmak üzere, SE tarafından güvence altına alınan verilere yetkisiz erişim.
Yüksek
  • Temel bir güvenlik özelliğinin tamamen atlanması (örneğin, SELinux, FBE veya seccomp )
  • Önyükleyici zincirinde, TEE'de veya SE'de derinlemesine savunma veya istismar azaltma teknolojisi için genel bir bypass
  • Uygulama, kullanıcı veya profil sınırlarının ötesinde bellek veya dosya içeriklerini açığa çıkaran işletim sistemi korumalarına yönelik genel bir geçiş
  • Daha az güvenli bir uygulamaya geçişle sonuçlanan bir SE'ye yönelik saldırılar
  • Uzaktan erişilebilen, güvenliği ihlal edilmiş çıplak donanım yazılımını (örneğin temel bant, CP/İletişim İşlemcisi) Uygulama İşlemcisi (AP) çekirdeğine yönlendirin veya çıplak donanım donanım yazılımını AP çekirdeğinden yalıtmak için tasarlanmış mekanizmaları atlayın
  • Cihaz korumasının/fabrika ayarlarına sıfırlama korumasının/taşıyıcı kısıtlamalarının atlanması
  • TEE tarafından güvence altına alınan kullanıcı etkileşimi gereksinimlerinin atlanması
  • Aktarım katmanı güvenliğine (TLS) ve Bluetooth'a (BT) yönelik saldırılar da dahil olmak üzere uçtan uca protokollere yönelik saldırılara izin veren şifreleme güvenlik açığı.
  • Uzaktan hizmet kimlik doğrulaması için kullanılan hassas kimlik bilgilerine yerel erişim (örneğin, hesap şifreleri veya taşıyıcı belirteçleri)
  • Ayrıcalıklı bir bağlamda, önyükleyici zincirinde, THB'de veya işletim sistemi çekirdeğinde yerel isteğe bağlı kod yürütme
  • Yerel güvenli önyükleme bypass'ı
  • Kilit ekranı bypass'ı
  • Temel geliştirici, güvenlik veya gizlilik ayarları için kullanıcı etkileşimi gereksinimlerinin yerel olarak atlanması
  • Paket kurulumunda veya eşdeğer davranışta kullanıcı etkileşimi gereksinimlerinin yerel olarak atlanması
  • Yerel kalıcı hizmet reddi (kalıcı, tüm işletim sisteminin yeniden başlatılmasını veya fabrika ayarlarına sıfırlanmasını gerektirir)
  • Korunan verilere (yani ayrıcalıklı bir bağlamla sınırlı olan verilere) uzaktan erişim
  • Ayrıcalıksız bir bağlamda uzaktan rastgele kod yürütme
  • Kullanıcı etkileşimi olmadan hücresel veya Wi-Fi hizmetine erişimin uzaktan engellenmesi (örneğin, hatalı biçimlendirilmiş bir paketle hücresel radyo hizmetinin kilitlenmesi)
  • Kullanıcı etkileşimi gereksinimlerinin uzaktan atlanması (kullanıcının başlatılmasını veya kullanıcı iznini gerektirmesi gereken işlevselliğe veya verilere erişim)
  • Acil durum hizmetlerine erişimin hedefli olarak önlenmesi
  • İstekte bulunan kişi güvenli bir iletim beklediğinde hassas bilgilerin güvenli olmayan bir ağ protokolü (örneğin, HTTP ve şifrelenmemiş Bluetooth) üzerinden iletilmesi. Bunun Wi-Fi şifrelemesi (WEP gibi) için geçerli olmadığını unutmayın.
  • TEE'deki zayıf anahtarlar tarafından etkinleştirilen erişim de dahil olmak üzere, TEE tarafından güvence altına alınan verilere yetkisiz erişim
Ilıman
  • Ayrıcalıklı bir bağlamda, THB'de veya işletim sistemi çekirdeğinde derinlemesine savunma veya istismar azaltma teknolojisine yönelik genel bir bypass
  • Uygulama, kullanıcı veya profil sınırları genelinde işlem durumunu veya meta verileri ortaya çıkaran işletim sistemi korumalarına yönelik genel bir atlama
  • Wi-Fi şifrelemesini veya kimlik doğrulamasını atlamak
  • Standart kripto temel öğelerinde, düz metin sızıntısına izin veren şifreleme güvenlik açığı (TLS'de kullanılan temel öğeler değil)
  • Korunan verilere (yani ayrıcalıklı bir bağlamla sınırlı olan verilere) yerel erişim
  • Ayrıcalıksız bir bağlamda yerel isteğe bağlı kod yürütme
  • Kullanıcı etkileşimi gereksinimlerinin yerel olarak atlanması (normalde kullanıcının başlatılmasını veya kullanıcı iznini gerektiren işlevselliğe veya verilere erişim)
  • Korunmayan verilere (yani yerel olarak yüklenen herhangi bir uygulamanın normalde erişebildiği verilere) uzaktan erişim
  • Kısıtlı bir bağlamda uzaktan rastgele kod yürütme
  • Uzaktan geçici cihaz servis reddi (uzaktan askıda kalma veya yeniden başlatma)
Düşük
  • Kullanıcı düzeyinde derinlemesine savunmaya yönelik genel bir bypass veya ayrıcalıklı olmayan bir bağlamda azaltma teknolojisinden yararlanma
  • Normal koruma seviyesi izninin atlanması
  • Standart dışı kullanımda kriptografik güvenlik açığı
  • Voice Match veya Face Match gibi cihaz içi kişiselleştirme özelliklerinin genel olarak atlanması
  • Güvenlik açığına yol açabilecek hatalı belgeler
  • Kısıtlı bir bağlamda yerel rastgele kod yürütme
  • Yanlış bir güvenlik beklentisi yaratan, yanıltıcı bir açıklama içeren sistem tanımlı metin
İhmal Edilebilir Güvenlik Etkisi (NSI)
  • Etkisi bir veya daha fazla derecelendirme değiştirici veya sürüme özgü mimari değişiklikleriyle, etkin önem derecesi Düşük'ün altında olacak şekilde azaltılan, ancak temeldeki kod sorunu devam eden bir güvenlik açığı
  • Hatalı biçimlendirilmiş bir dosya sistemi gerektiren herhangi bir güvenlik açığı, eğer bu dosya sistemi her zaman kullanılmadan önce benimsenirse/şifrelenirse .
  • Yerel geçici hizmet reddi (ör. cihazın yeniden başlatılmasıyla veya tetikleyici uygulamanın kaldırılmasıyla durumun çözülebileceği durumlar).

Derecelendirme değiştiricileri

Güvenlik açıklarının ciddiyetinin belirlenmesi genellikle kolay olsa da derecelendirmeler koşullara göre değişebilir.

Sebep Etki
Saldırıyı yürütmek için ayrıcalıklı bir bağlam olarak çalışmayı gerektirir (TEE, SE ve pKVM gibi hipervizörler için geçerli değildir) -1 Şiddet
Güvenlik açığına özgü ayrıntılar, sorunun etkisini sınırlıyor -1 Şiddet
Biyometrik bilgilerin doğrudan cihaz sahibinden alınmasını gerektiren biyometrik kimlik doğrulama bypass'ı -1 Şiddet
Derleyici veya platform yapılandırmaları kaynak kodundaki güvenlik açığını azaltır Temeldeki güvenlik açığı Orta veya daha yüksekse Orta Önem Derecesi
Cihazın dahili bileşenlerine fiziksel erişim gerektirir ve cihaz kapalıysa veya açıldığından beri kilidi açılmamışsa da bu mümkündür. -1 Şiddet
Cihaz açıkken ve daha önce kilidi açılmışken cihazın dahili bileşenlerine fiziksel erişim gerektirir -2 Şiddet
Önyükleyici zincirinin kilidinin açılmasını gerektiren yerel bir saldırı Düşükten daha yüksek değil
Cihazda Geliştirici Modunun veya herhangi bir kalıcı geliştirici modu ayarının etkin olmasını gerektiren yerel bir saldırıdır (ve Geliştirici Modunun kendisinde bir hata değildir). Düşükten daha yüksek değil
Hiçbir SELinux alanı Google tarafından sağlanan SEPolicy kapsamında işlemi yürütemezse İhmal Edilebilir Güvenlik Etkisi

Yerel ve Yakınsal ve Uzak

Uzaktan saldırı vektörü, hatanın bir uygulama yüklenmeden veya bir cihaza fiziksel erişim olmadan kullanılabileceğini gösterir. Bu, bir web sayfasına göz atarak, bir e-postayı okuyarak, bir SMS mesajı alarak veya düşmanca bir ağa bağlanarak tetiklenebilecek hataları içerir. Şiddet derecelendirmelerimizin amacı doğrultusunda, "yakın" saldırı vektörlerini de uzak olarak değerlendiriyoruz. Bunlar arasında yalnızca hedef cihazın fiziksel olarak yakınında bulunan bir saldırganın yararlanabileceği hatalar (örneğin, hatalı biçimlendirilmiş Wi-Fi veya Bluetooth paketlerinin gönderilmesini gerektiren bir hata) yer alır. Ultra geniş bant (UWB) ve NFC tabanlı saldırıları yakın ve dolayısıyla uzak olarak değerlendiriyoruz.

Yerel saldırılar, kurbanın bir uygulamayı yükleyip çalıştırması veya bir Hazır Uygulamanın çalıştırılmasına izin vermesi yoluyla bir uygulamayı çalıştırmasını gerektirir. Eşleştirilen tamamlayıcı cihazlar yerel olarak kabul edilecektir. Önem derecelendirmesi amacıyla Android güvenlik ekibi, fiziksel saldırı vektörlerini de yerel olarak değerlendiriyor. Bunlar arasında yalnızca cihaza fiziksel erişimi olan bir saldırganın yararlanabileceği hatalar (örneğin, kilit ekranındaki bir hata veya bir USB kablosunun takılmasını gerektiren bir hata) yer alır.

Ağ güvenliği

Android, tüm ağların düşmanca olduğunu ve saldırılar düzenleyebileceğini veya trafiği gözetleyebileceğini varsayar. Bağlantı katmanı güvenliği (örneğin Wi-Fi şifreleme), bir cihaz ile bağlı olduğu Erişim Noktası arasındaki iletişimi korurken, cihaz ile iletişim kurduğu sunucular arasındaki zincirde kalan bağlantıların güvenliğini sağlamak için hiçbir şey yapmaz.

Buna karşılık, HTTPS tipik olarak tüm iletişimi uçtan uca korur, verileri kaynağında şifreler, ardından yalnızca nihai hedefine ulaştığında şifresini çözer ve doğrular. Bu nedenle, bağlantı katmanı ağ güvenliğini tehlikeye atan güvenlik açıkları, HTTPS/TLS'deki güvenlik açıklarından daha az ciddi olarak derecelendirilir: Wi-Fi şifrelemesi, internetteki çoğu iletişim için tek başına yeterli değildir.

Biyometrik kimlik doğrulama

Biyometrik kimlik doğrulama zorlu bir alandır ve en iyi sistemler bile yakın eşleşmeyle kandırılabilir (bkz . Android Geliştiricileri Blogu: Android 11'de kilit ekranı ve kimlik doğrulama iyileştirmeleri ). Bu önem dereceleri, iki saldırı sınıfını birbirinden ayırır ve son kullanıcıya yönelik gerçek riski yansıtmayı amaçlar.

Birinci sınıf saldırılar, biyometrik kimlik doğrulamanın, sahibinden yüksek kaliteli biyometrik veriler olmadan genelleştirilebilir bir şekilde atlanmasına olanak tanır. Örneğin, bir saldırgan parmak izi sensörüne bir parça sakız yerleştirirse ve sensörde kalan kalıntıya göre cihaza erişim izni verirse, bu, duyarlı herhangi bir cihaza gerçekleştirilebilecek basit bir saldırıdır. Cihazın sahibi hakkında herhangi bir bilgi gerektirmez. Genelleştirilebilir olduğu ve potansiyel olarak daha fazla sayıda kullanıcıyı etkilediği göz önüne alındığında, bu saldırı tam önem derecesi alır (örneğin, Kilit Ekranı atlaması için Yüksek).

Diğer saldırı sınıfı genellikle cihaz sahibine dayalı bir sunum saldırı aracını (sahtekarlık) içerir. Bazen bu biyometrik bilginin elde edilmesi nispeten kolaydır (örneğin, birinin sosyal medyadaki profil resmi biyometrik kimlik doğrulamasını kandırmak için yeterliyse, o zaman biyometrik bypass tam önem derecesi alacaktır). Ancak bir saldırganın doğrudan cihaz sahibinden biyometrik veri alması gerekiyorsa (örneğin, yüzünün kızılötesi taraması), bu, saldırıdan etkilenen kişi sayısını sınırlayacak kadar önemli bir engeldir; dolayısıyla -1 değiştiricisi vardır. .

SYSTEM_ALERT_WINDOW ve Tapjacking

SYSTEM_ALERT_WINDOW ve dokunma hırsızlığına ilişkin politikalarımız hakkında bilgi için BugHunter Üniversitesi'nin Güvenlik etkisi olmayan hatalar sayfasının " Güvenlik açısından kritik olmayan bir ekranda SYSTEM_ALERT_WINDOW güvenlik açığına dokunma/yer paylaşımı " bölümüne bakın.

Android Automotive OS'de çok kullanıcılı güvenlik

Android Automotive OS, diğer form faktörlerinden farklı olarak çok kullanıcılı bir güvenlik modelini benimser. Her Android kullanıcısının farklı bir fiziksel kişi tarafından kullanılması amaçlanmıştır. Örneğin, araç sahibinden aracı ödünç alan bir arkadaşına geçici misafir kullanıcı atanabilir. Bunun gibi kullanım durumlarına uyum sağlamak amacıyla, kullanıcılar varsayılan olarak Wi-Fi ve hücresel ağ ayarları gibi aracı kullanmak için gereken gerekli bileşenlere erişime sahiptir.

Etkilenen bileşen

Hatayı düzeltmekten sorumlu geliştirme ekibi, hatanın hangi bileşende olduğuna bağlıdır. Bu, Android platformunun temel bir bileşeni, orijinal ekipman üreticisi (OEM) tarafından sağlanan bir çekirdek sürücüsü veya Pixel cihazlarına önceden yüklenmiş uygulamalardan biri olabilir. .

AOSP kodundaki hatalar Android mühendislik ekibi tarafından düzeltildi. Düşük önem derecesine sahip hatalar, belirli bileşenlerdeki hatalar veya halihazırda kamuya açık olan hatalar, doğrudan kamuya açık olan AOSP ana dalında düzeltilebilir; aksi halde önce dahili depolarımızda sabitlenirler.

Bileşen aynı zamanda kullanıcıların güncellemeleri nasıl alacağına ilişkin bir faktördür. Çerçevedeki veya çekirdekteki bir hata, her OEM'in göndermesi gereken bir kablosuz (OTA) ürün yazılımı güncellemesi gerektirir. Google Play'de yayınlanan bir uygulama veya kitaplıktaki (örneğin, Gmail, Google Play Hizmetleri veya WebView) bir hata, Android kullanıcılarına Google Play'den güncelleme olarak gönderilebilir.

İş ortaklarına bildirim

AOSP'deki bir güvenlik açığı Android Güvenlik Bülteni'nde giderildiğinde, Android iş ortaklarına sorunun ayrıntılarını bildireceğiz ve yamalar sağlayacağız. Backport destekli sürümlerin listesi her yeni Android sürümüyle birlikte değişir. Desteklenen cihazların listesi için cihazınızın üreticisine başvurun.

AOSP'ye kod yayınlanıyor

Güvenlik hatası bir AOSP bileşenindeyse, OTA kullanıcılara yayınlandıktan sonra düzeltme AOSP'ye iletilir. Düşük önem derecesine sahip sorunlara yönelik düzeltmeler, OTA aracılığıyla cihazlara bir düzeltme sunulmadan önce doğrudan AOSP ana şubesine gönderilebilir.

Android güncellemelerini alma

Android sistemine yapılan güncellemeler genellikle OTA güncelleme paketleri aracılığıyla cihazlara iletilir. Bu güncellemeler, cihazı üreten OEM'den veya cihaza servis sağlayan operatörden gelebilir. Google Pixel cihaz güncellemeleri, bir operatör teknik kabul (TA) test prosedüründen geçtikten sonra Google Pixel ekibinden gelir. Google ayrıca cihazlara yandan yüklenebilecek Pixel fabrika görsellerini de yayınlıyor.

Google hizmetleri güncelleniyor

Android güvenlik ekibi, güvenlik hataları için yamalar sağlamanın yanı sıra, kullanıcıları korumanın başka yollarının olup olmadığını belirlemek için güvenlik hatalarını da inceler. Örneğin, Google Play tüm uygulamaları tarar ve bir güvenlik açığından yararlanmaya çalışan tüm uygulamaları kaldırır. Google Play dışından yüklenen uygulamalar için, Google Play Hizmetlerine sahip cihazlar, kullanıcıları zararlı olabilecek uygulamalar konusunda uyarmak için Uygulamaları Doğrula özelliğini de kullanabilir.

Diğer kaynaklar

Android uygulama geliştiricileri için bilgiler: https://developer.android.com

Güvenlik bilgileri Android Açık Kaynak ve Geliştirici sitelerinde mevcuttur. Başlamak için iyi yerler:

Raporlar

Bazen Android Güvenliği ekibi raporlar veya teknik incelemeler yayınlar. Daha fazla ayrıntı için Güvenlik Raporlarına bakın.