Sızan bir Android Q yapısının analizi, Android'e daha fazla gizlilik yükseltmesinin geldiğini gösteriyor: arka planda pano okumalarının engellenmesi, daha iyi medya koruması ve daha fazlası.
Android'in her yeni sürümü yeni özelliklerle birlikte gelir; bu, Android'in bu özelliklere erişim sağlamak için yeni izinlere ihtiyaç duyduğu anlamına gelir. Android Q'nun çerçevesinde pek çok yeni izin buldum (bunların çoğunu bu makalede ele almayacağım çünkü çoğu ilginç değil). Bulduğum bazı izinlerin herhangi bir açıklaması yoktu, ancak adları zaten oldukça açıklayıcı. Gelin, Android Q'daki yeni perde arkası gizlilik geliştirmelerinin yanı sıra bulduğum diğer birkaç ilginç özelliği derinlemesine inceleyelim ve tartışalım.
Bize kullanma lisansı sağladığı için PNF Yazılımına özellikle teşekkür ederiz JEB Kod Çözücü. JEB Decompiler, Android uygulamaları için profesyonel düzeyde bir tersine mühendislik aracıdır.
Arka Plan Panosuna Erişimi Engelleme
Bunu biliyor muydun Android'deki her uygulama panonuzu okuyabilir
ve bunu yapmaları için onlara çalışma zamanı izni vermeniz gerekmiyor mu? Pek çok kişi muhtemelen kullanıcı adları, şifreler, adresler vb. gibi hassas bilgileri kopyalar. Bu nedenle herhangi bir uygulamanın bu verileri arka planda kazıması kolay olacaktır. Bu nedenle birçok şifre yöneticisi uygulaması KeePass Android pano yöneticisini atlamak için kullanabileceğiniz kendi klavyeleri var. Şifre yöneticisi uygulamaları genellikle herhangi bir şeyi kopyalayıp yapıştırdıktan sonra panoyu sizin için temizler. Android uygulamalarının panoyu okuması gerekmesinin nedeni, pano olmadan panodan herhangi bir metni kabul edememeleridir; bu, kopyaladığınız hiçbir metni yapıştıramayacağınız anlamına gelir. Neyse ki Android Q bunu değiştirmeyi planlıyor.“adlı yeni bir izin eklendi.READ_CLIPBOARD_IN_BACKGROUND
Bu tam olarak ne diyorsa onu yapacak gibi görünüyor: Arka planda hangi uygulamaların panoyu okuyabileceğini sınırlayın. Bu iznin koruma düzeyi "imza"dır; bu, yalnızca OEM tarafından imzalanan uygulamalara bu iznin verilebileceği anlamına gelir.
<permissionandroid: name="android.permission.READ_CLIPBOARD_IN_BACKGROUND"android: protectionLevel="signature"/>
Uygulamaların Sürüm Düşürülmesi Desteği?
Google Play'de bir uygulamanın güncellemesini yüklediğiniz ve hemen pişman olduğunuz oldu mu? Bazen bir geliştirici, beklemediği bir şeyi bozan bir güncellemeyi yayınlayabilir, ancak güncelleme bir kez gönderilip yüklendikten sonra bu konuda herhangi bir şey yapmak için çok geçtir. Geliştiricinin hızlı bir şekilde bir düzeltme yayınlaması gerekiyor ve kullanıcının ya bir güncelleme yayınlanana kadar uygulamayı kullanmayı bırakması ya da uygulamayı kaldırıp daha eski bir sürümü yüklemesi gerekiyor. Aşağıdaki gibi bir uygulamaya sahip köklü bir cihazınız olmadığı sürece bir uygulamanın sürümünü düşürmenin yolu yoktur. Titanyum yedeklemeçünkü Android'in paket yöneticisi uygulamaların eski sürümlerini yüklemenizi engelliyor. Bunu yapmanın iyi bir nedeni var çünkü bir uygulamanın eski bir sürümünü yüklemek, uygulamanın bozulmasına neden olabilir. uygulamanın verileri temizlenmemişse veya eski sürüm bir güvenlik açığına sahipse kullanıcıyı tehlikeye maruz bırakabilir kusur.
Google'ın, kullanıcıların uygulamaları daha eski bir sürüme geri döndürmesine izin verip vermeyeceğinden emin olmasak da, Android Q'da bunun mümkün olabileceğini öne süren çeşitli izinler ve komutlar bulduk. Öncelikle yeni "PACKAGE_ROLLBACK_AGENT
" Ve "MANAGE_ROLLBACKS
” izinleri, önceden yüklenmiş market uygulamasının, uygulama sürümlerinin geri alınmasını yönetmek için bir aracı görevi görebileceğini öne sürüyor. İlk izin "imza" iken ikincisi "imzanın" üstünde "yükleyici"dir, yani bu yalnızca platform imzalı bir uygulama anlamına gelir. Uygulama yükleme (cihaza bağlı olarak genellikle yalnızca paket yöneticisi, Google Play Store veya diğer birinci taraf uygulama mağazaları) bu izinleri kullanabilir. İki yeni korumalı yayın amacı eklendi: “PACKAGE_ENABLE_ROLLBACK
" Ve "PACKAGE_ROLLBACK EXECUTED
.” Bu yayınlar üçüncü taraf uygulamalar tarafından gönderilemez ve muhtemelen etkilenen uygulamanın eski sürüme geçirildiğini bilmesini sağlamayı amaçlamaktadır (çoğunlukla). uygulamalara güncellendiklerinde nasıl bilgi verildiği gibi, onlara bir sonraki başlangıçta bazı mesajlar görüntüleme şansı veriyor.) Son olarak, yeni bir bayrak eklendi “pm install
” kabuk komutu. Bayrak, “--enable-rollback
", bir uygulamayı daha önceki bir sürüme geri almanıza izin verebilir. Yine de çalıştıramadım.
<protected-broadcast android: name="android.intent.action.PACKAGE_ENABLE_ROLLBACK"/>
<protected-broadcast android: name="android.intent.action.PACKAGE_ROLLBACK_EXECUTED"/>
<permissionandroid: name="android.permission.PACKAGE_ROLLBACK_AGENT"android: protectionLevel="signature"/>
<permissionandroid: name="android.permission.MANAGE_ROLLBACKS"android: protectionLevel="installer|signature"/>
Harici Depolama Alanındaki Dosyaların Güvenliğini Sağlama
Android'de veri depolama, "dahili depolamayı" (/data/media hariç veriler) ve "harici depolamayı" (/data/media ve takılı SD kartları veya USB sürücüleri) içerir. APK'lar ve bunların en hassas verileri dahili depolamada depolanırken belgeler, resimler, videolar vb. gibi paylaşılan medyalar da depolanır. harici depolama biriminde saklanır. Varsayılan olarak uygulamalar, dosyaları harici depolamadaki tek bir dizine okuyabilir ve yazabilir: /data/media/[user]/Android/data/[package_name]. (Bu davranış hakkında daha fazla bilgi edinmek için makalemi okumanızı öneririm. sdcardfs ile ilgili makale Android Oreo'da.) Kullanıcı bir uygulamaya harici depolama izin grubu (READ_EXTERNAL_STORAGE
veya WRITE_EXTERNAL_STORAGE
), uygulama daha sonra harici depolama birimindeki herhangi bir dosyayı okuyabilir veya yazabilir. Bu sorunludur çünkü bir uygulamaya yalnızca belirli dosyaları okumasına veya yazmasına izin vermek istediğinizde potansiyel olarak sizin hakkınızda çok fazla veri toplama yeteneği veriyorsunuz. Bunu düzeltmek için Google, Android Q'da birkaç yeni harici depolamayla ilgili izin sunuyor gibi görünüyor. İzinler aşağıdaki özelliklerin geçişini sağlayacaktır:
- Ortamınızdan konumları okuma yeteneği. (Görüntülerin meta verilerine erişimin varsayılan olarak engellenmesi muhtemeldir.)
- Müzik dosyalarına erişme yeteneği.
- Fotoğraflara erişme yeteneği.
- Videolara erişme yeteneği.
Zaten sahip olan uygulamalar için READ_EXTERNAL_STORAGE
veya WRITE_EXTERNAL_STORAGE
Android Q güncellemesinden önceki izinleri alırlarsa yenisini alacaklar Okumak izinler ancak yeni değil yazmak izinler. Örneğin, halihazırda izin verilmiş bir uygulama READ_EXTERNAL_STORAGE
kullanıcı tarafından otomatik olarak verilecektir READ_MEDIA_IMAGES
izin ama değil WRITE_MEDIA_IMAGES
izin.
Android Q'nun çerçeve çözünürlüğünden ilgili dizeler
<stringname="permgroupdesc_aural">access your musicstring>
<stringname="permgrouplab_visual">Photos & Videosstring>
<stringname="permgrouprequest_aural">Allow <b>%1$s</b> to access your music?string>
<stringname="permgroupdesc_visual">access your photos & videosstring>
<stringname="permgrouplab_activityRecognition">Activity recognitionstring>
<stringname="permgrouplab_aural">Musicstring>
<stringname="permdesc_videoRead">Allows the app to read your video collection.string>
<stringname="permdesc_videoWrite">Allows the app to modify your video collection.string>
<stringname="permdesc_imagesRead">Allows the app to read your photo collection.string>
<stringname="permdesc_imagesWrite">Allows the app to modify your photo collection.string>
<stringname="permdesc_audioRead">Allows the app to read your music collection.string>
<stringname="permdesc_audioWrite">Allows the app to modify your music collection.string>
<stringname="permlab_audioRead">read your music collectionstring>
<stringname="permlab_audioWrite">modify your music collectionstring>
<stringname="permdesc_mediaLocation">Allows the app to read locations from your media collection.string>
"android.permission.READ_EXTERNAL_STORAGE"
targetSdk="10000">
<new-permission name="android.permission.READ_MEDIA_AUDIO" />
<new-permission name="android.permission.READ_MEDIA_VIDEO" />
<new-permission name="android.permission.READ_MEDIA_IMAGES" />
split-permission>"android.permission.WRITE_EXTERNAL_STORAGE"
targetSdk="10000">
<new-permission name="android.permission.READ_MEDIA_AUDIO" />
<new-permission name="android.permission.READ_MEDIA_VIDEO" />
<new-permission name="android.permission.READ_MEDIA_IMAGES" />
split-permission>
devamını oku
Arka Planda Konum Erişiminin Geri Dönüşü
Android Oreo ve Android 9 Pie, kullanıcı gizliliğini koruma konusunda büyük adımlar attı ancak bazı kullanıcılar, Google'ın işleri çok ileri götürdüğünü hissetti. Özellik regresyonu olarak kabul edilebilecek böyle bir alan arka planda konum erişimi. Android Oreo ve sonraki sürümlerde konum erişimi, arka planda çalışan uygulamalar nedeniyle doğrudan sonlandırılmasa bile büyük ölçüde kısıtlanmıştır. Uygulamaların, cihazın sürekli olarak yoklanmasını istiyorlarsa ya ön planda olmaları ya da ön planda çalışan bir hizmete sahip olmaları gerekir. konum. Bu, uygulamaların arka planda konumunuzu gözetlemesini engeller, ancak aynı zamanda kullanıcının arka planda bir uygulamayı kullanarak kendi konumunu haritalandırmasını da engeller. Bu, ayrı bir makalede değindiğimiz bir sorundur ve görünen o ki Google, bu geliştiricilerin ve kullanıcıların endişelerini gidermek için Android Q'ya yeni bir izin ekliyor.
Android Q'da, bir uygulamanın cihazın konumuna arka planda erişmesine olanak tanıyan yeni bir izin eklendi. İznin kullanıcıya yönelik açıklamasında "uygulamayı kullanmadığınızda bile uygulamanın her zaman konuma erişebileceği" uyarısı yapılıyor. Bu izin Uygulamanın "arka planda çalışırken konuma erişebilmesi için" "yaklaşık veya kesin konuma ek olarak" izinler verilecek. Tersine, kaba konum izni konumunuzu yalnızca baz istasyonları veya Wi-Fi ağları gibi ağ kaynaklarına göre alabilir, ancak yalnızca uygulama ön plan.
Android Q'nun çerçeve çözünürlüğünden ilgili dizeler
<stringname="permgroupbackgroundrequest_location">Always allow <b>%1$s</b> to access this device’s location?string>
<stringname="permgroupbackgroundrequestdetail_location">The app will always have access to the location, even when you’re not using the app.string>
"permdesc_accessBackgroundLocation">If this is granted additionally to the approximate or precise location access the app can access the location while running in the background.</string>
"permdesc_accessCoarseLocation">This app can get your location based on network sources such as cell towers and Wi-Fi networks, but only when the app is in the foreground. These location services must be turned on and available on your phone for the app to be able to usethem.string>
"android.permission.ACCESS_FINE_LOCATION"
targetSdk="10000">
<new-permission name="android.permission.ACCESS_BACKGROUND_LOCATION" />
split-permission>
"android.permission.ACCESS_COARSE_LOCATION"
targetSdk="10000">
<new-permission name="android.permission.ACCESS_BACKGROUND_LOCATION" />
split-permission>
devamını oku
Fiziksel Aktivite Tanıma
Android Q'ya, bir uygulamanın "fiziksel aktivitenizi tanımasına" olanak tanıyan yeni bir izin eklendi. Bu teknik olarak yeni değil çünkü zaten Google Play Hizmetlerinin bir parçasıancak bu, Google'ın izni Play Hizmetleri'nden ayıracağı anlamına gelebilir. Google Play Hizmetlerinin temel Android özelliklerini sağlamada ne kadar bütünleyici bir rol oynadığını düşünürsek, gücünün bir kısmının AOSP'ye geri döndüğünü görmek güzel.
<stringname="permgroupdesc_activityRecognition">recognize activitystring>
<stringname="permgrouprequest_activityRecognition">Allow <b>%1$s</b> to recognize your physical activity?string>
<stringname="permdesc_activityRecognition">This app can recognize your physical activity.string>
Daha fazla Android Q haberi için şuraya göz atın: etiket tarihe göre sıralanmış en son haberlerle. Yakın zamanda Google'ın üzerinde çalıştığına işaret eden birçok kanıt içeren bir makale yayınladık. Face ID benzeri yüz kimlik doğrulama donanımını destekleme Android Q'da. Ayrıca bir Sızan Android Q yapısının ilk uygulamaları (ve hatta bir video bile var) buraya göz atmanız gerekir. Elde ettiğimiz bu ilk Android Q yapısından elde ettiğimiz bulguların daha fazlasını yayınlayacağız, o yüzden bizi izlemeye devam edin.