Google’ın bir başka gizli tarayıcısı
(matan-h.com)- Google Play Services içindeki gizli tarayıcı, Contacts uygulamasındaki web sitesi bağlantısıyla açılabiliyor ve Google ebeveyn denetimlerinin genel kısıtlamaları ile lock-down mode’u aşabiliyor
- Bunu mümkün kılan neden, lock-down mode’da bile Google Play Services ve telefon için Contacts uygulamasının kalması; Contacts’ın açtığı deeplink’lerin ebeveyn denetimi engeline takılmayan bir yapıda olması
- Android “what’s new” ekranına götürüyor; Google Yardım ve Google sayfaları üzerinden tarayıcı gibi kullanılabiliyor
- Android 11+’daki screen pinning de Contacts uygulamasından Google Podcast açılıp bir açılır pencere gösterildikten sonra varsayılan tarayıcıya geçilerek aşılabiliyor
- Google, ebeveyn denetimi aşımı ve screen pinning aşımı bildirimlerini ayrı vakalar olarak aldı; ancak screen pinning aşımı için intended behavior yanıtını verdi ve yinelenen kayıt işlemesini de ayrı bir ödül programı meselesi olarak değerlendirdi
Contacts bağlantısıyla açılan Google Play Services tarayıcısı
- Google Play Services içinde bağlantı üzerinden erişilebilen gizli bir tarayıcı bulunuyor ve Contacts uygulamasındaki kişi web sitesi alanından açılabiliyor
- Çalıştırma akışı, Contacts uygulamasında bir kişiyi düzenleyip veya yeni bir kişi oluşturup “Website” alanına
https://gds.google.com/gmsdropsyazıp kaydettikten sonra bağlantıyı açma şeklinde - Bu bağlantı, Android’in “what’s new” ekranına giden bir deeplink
- “Show me” ve “Learn more” adımlarından geçilince tarayıcı ekranına girilebiliyor
- Ardından hamburger menüden “Google Help”e basıp, tekrar menüden “Google” seçilerek Google sayfasına gidilebiliyor
- Bu tarayıcı Google hesabında oturum açmış olabilir de olmayabilir de
- Buradan Google oturumu kapatılsa bile Chrome tarayıcısı etkilenmiyor
- lock-down mode’da Google, Android başlatıcı ve sistemin bazı bölümleri de dahil olmak üzere uygulamaları kilitliyor; ancak açılır pencere gösterimi ve kısıtlama uygulamak için kullanılan Google Play Services ile telefon için Contacts uygulamasını bırakıyor
- Ebeveyn denetimleri deeplink açılmasına izin vermiyor; ancak kişinin web sitesi alanına tıklandığında bağlantıyı Contacts uygulaması açtığı için engellenmiyor
Android screen pinning aşımı ve Google’ın yanıtı
- Android screen pinning, Android 11+’da ekranı belirli bir uygulamaya sabitleyerek izin olmadan başka bir uygulamaya geçilmesini engelleyen bir özellik
- Aynı
gmsdropsbağlantısı, screen pinning durumunda yeni bir uygulama açtığı için kullanılamıyor - Bunun yerine Google Podcast deeplink’i, tam bir uygulama olarak değil açılır pencere olarak açılıyor
- Contacts uygulamasının web sitesi alanına
https://podcasts.google.comyazıp, uygulama sabitlenmiş durumdayken bağlantı açıldığında Google Podcast açılır penceresi beliriyor - Google hesabı simgesinden “Content policies”e basılınca varsayılan tarayıcıya geçilebiliyor
- Ardından Google Help ve Google menüsü üzerinden Google sayfasına gidilebiliyor
- Contacts uygulamasının web sitesi alanına
- Google’a iki konu ayrı ayrı bildirildi
- Ebeveyn denetimi aşımı vakası
- Android screen pinning aşımı vakası
- Google, ebeveyn denetimi aşımı konusunu screen pinning aşımı konusuyla birleştirdi; sonrasında yinelenen vaka işlemesi karışık bir hâle geldi
- Google’ın screen pinning aşımıyla ilgili yanıtı “Android screen pinning bypassing is the intended behavior” oldu
- Yinelenen kayıt işlemesiyle ilgili olarak ise “potentially another issue”nun yineleneni olarak kapatıldı ve ayrı bir ödül programı olduğu için kendi sorunları olmadığı anlamına gelen bir yanıt verildi
1 yorum
Hacker News görüşleri
Güvenlik açığı bildirimlerini alan bir ekipseniz, “bu başka bir iç ekibin işi, gidin onlara sorun” dememelisiniz
Aslında kurum içindeki neredeyse herkes, makul görünen bir güvenlik açığı bildirimi aldığında bunun doğru kişilere iletilmesini sağlamalı; bu öylece geçiştirilecek bir şey değil
Yine de tersinden bakınca, ister dış müşteri ister iç paydaş olsun, destek işi adeta sıcak patates gibidir; başkasına devredemeyen ilk kişi yanar
Herkesin, gerçekte yetki ya da sorumluluk kimde olursa olsun, müşteri şikayetlerini çözmeyi üstlenmesi güzel olurdu ama pratikte birçok kişi Kopenhag usulü etik yorumuyla hareket ediyor
Sırf sorumlu kişiye iletmek bile riskli ve bunun ötesinde dahil olmak, gerçek ilgisi olsun olmasın, sizi sorunun içine çekip sorumluluk yükleyebiliyor
Buna asıl-vekil problemi de diyebilirsiniz, “isteğini yerine getirecek birini avlayan insanlarla dolu bir dünyada hayatta kalmak” da diyebilirsiniz
Eskiden işle az da olsa ilgili her iç talebi halletmeye çalışırdım ama doğrudan yöneticim, 1 dakikadan uzun sürecek yardımlar için proje ID’si ya da masraf kodu istememi söyledi. Yoksa aslında ücretlendirilmesi gereken işleri yapamaz hale geldiğimi düşünüyordu
“Google içindeki başka departmanların iletişim bilgilerini bilmiyorum”, “Google’daki başka ekiplerden kimsenin e-postasını bilmiyorum” demeleri, insanı gerçekten şaşırtıyor
İşletim sistemine eklenmiş bir özelliğin tasarım kusuru olduğu doğru ama büyük çaplı bir incelemeyi zorunlu kılan bir konu olup olmadığı ayrı mesele
“Buna bakmayı bile düşünmüyoruz” gibi bir tavırları varmış gibi görünmüyor
Bizim şirkette de böyle bir durumda ne yapılacağını kestiremiyorum
Çocukken banka gibi kurumların lobilerinde, yalnızca şirketin web sitesini açan özel tarayıcıların kurulu olduğu bilgisayar terminalleri olurdu; o dönem Best Viewed In rozetleri de yaygındı
Annem babamla bir işi için gittiğimde böyle bir bilgisayar bulur, Help gibi bir sayfaya tıklayıp o rozeti arardım; bulunca da tek siteyle sınırlı tarayıcı kısıtını aşıp netscape.com gibi yerlere çıkabilirdim
Oradan bir arama motoru bağlantısı bulup istediğim yerleri dolaşabiliyordum
Bu yüzden CTRL+ALT+DEL ile görev yöneticisini açıp demo yazılımını kapatırdım
Daha inatçı demolarsa hemen yeniden çalıştığı için msconfig’i açıp başlangıçtan çıkarır, sonra yeniden başlatırdım
Yanımda izleyen insanlar bunu hayranlıkla karşılayıp kendi PC’lerinde de aynısını yapmamı isterdi; sonra onlar da Mayın Tarlası ya da Pinball deneyebilirdi
Bugün amatörce gelebilir ama 90’ların ortasında CTRL+ALT+DEL, ancak işten anlayanların bildiği bir tür güç aracıydı
MS Word’de URL aç seçeneğini kullanıp arama motorunu ya da istediğiniz siteyi girince tarayıcı açılır ve web filtresi atlatılabilirdi
Bu sunucular genelde motd’yi more ile gösterip sonra lynx gibi yazılımlara geçirirdi ama restricted mode kullanmadıkları için
!shyazarak bir kabuk açabiliyordunuzGüzel zamanlardı
Web üzerinden e-postaya erişilebildiği için, kendime arama motoru bağlantılarını e-postayla gönderir ve e-postadaki bağlantıya sağ tıklayıp aynı çerçevede açardım
Ondan sonra arama sonuçlarından bulunabilen her yere gidebiliyordum
2000’lerde lisede kısıtları atlatma deneyimim var, o yüzden yoldan geçen biri detaylı anlatırsa sevinirim
Google’ın ebeveyn denetimi özellikleri fazla hayal kırıklığı yaratıyor
Play Store uygulamasını devre dışı bırakma talebi uzun zaman önce vardı ama hâlâ
adbolmadan mümkün değil veadbde başka sorunlar doğurduğu için iyi bir çözüm değilGerçek çocukların ebeveyn denetimi özelliklerini test etmediği hissi veriyor
Bir süre boyunca YouTube’a süre sınırı koysanız bile Play Store’u açıp, ekran görüntüsü listesinde video bulunan bir uygulamaya gidip oradan YouTube’a geçerek çok kolay şekilde aşılabiliyordu
Bunu bizzat oğlum bulup bana göstermişti
Bu sorunları toparlayan 5 sayfalık bir belge yazdım ama gönderecek kimse yok
En büyük şikâyet, artık küçük çocuk olmayan iki çocukla birlikte telefonlar, tabletler, Google TV’ler ve Google hesabıyla oturum açılmış PC’ler gibi birden fazla Google cihazı aynı ortamda olduğunda ortaya çıkıyor
Google sanki ebeveyn denetimini “Billy’nin telefonunu ebeveyn fiziksel olarak veriyor ve iş bitince geri alıyor” türü gözetimli bir durum için tasarlamış gibi duruyor
Temelde hesap düzeyinde değil, cihaz düzeyinde olduğu için hem zahmetli hem de aşması kolay
Örneğin Jill evdeki 3 Google TV’ye kendi hesabıyla erişebiliyorsa, Family Link her TV için günde kaç saat izin verileceğini ayrı ayrı ayarlatıyor
Ama Jill için TV sadece TV, yani evde yalnızsa ilk TV’nin kotasını bitirip sonra öbürüne geçiyor
Kanıtım yok ama farklı ürün ekipleri ya gerçekte yakın çalışmıyor ya da hatta birlikte çalışmamaları yönünde teşvik ediliyor gibiler; bu ekipler Google içinde çıkmaz sokak ekipleri de olabilir
Family Link ekibine gelen ürün ve mühendislik sorumlularının ya gerçekten çocuğu yok ya da çocukları çok küçük; varsa da en fazla bir küçük çocukları var gibi görünüyor
Erişilebilirlik izni alındığı anda kullanıcının cihazı tamamen kontrol edilebiliyor
İzinler bölünüp daha ince ayarlı kontrol API’leri sunulabilirdi ama sanki tasarım, tamamen görme engelli bir kullanıcının erişilebilirlik uygulamasını tüm etkileşimlerin arayüzü olarak kullanmak zorunda olduğu çok uç bir senaryo etrafında yapılmış
Sonuçta o API’nin yalnızca tek bir özelliğini kullanmak isteseniz bile uygulamaya tamamen güvenmeniz ve cihazda her şeyi yapabilen açık çek vermeniz gerekiyor
Sonunda da “bizim amaçladığımız kullanım senaryosu sadece bu, başka kullanım için taviz vermeyiz” denildiği için platform güvenliğinde devasa bir delik açılıyor
Akran grubundan tamamen izole etmek için bodruma kapatmıyorsanız, biraz meraklı bir çocuğa teknik olarak karşı koymak neredeyse imkânsız
Bu özellik en iyi yumuşak bir sınır olarak çalışıyor. Aşılması durumunda bunun açık ve yoruma kapalı bir itaatsizlik sayılmasını sağlıyor, o kadar
Sonuçta bu ebeveyn denetimi; NSA’yı durduracak bir güvenlik sistemi değil ve bunu teknik olarak kusursuz hâle getirmek herkes için daha kötü bile olabilir
Tüketicinin kendini daha güvende hissetmesi için eklenmiş bir özellik ama gerçekten kullanmaya çalışınca insanlar çabucak vazgeçiyor
Küçük bir örnek olarak, iOS Screen Time içinde web sitelerini izin verilenler listesiyle sınırlayabiliyorsunuz; kulağa kullanışlı geliyor ama bunu yapınca birçok uygulamanın giriş ekranı gibi şeyler topluca bozuluyor
Bir şeyi düzeltmek için hangi URL’yi izinli yapmanız gerektiğine dair de hiçbir ipucu vermiyor
Modern teknolojiyi kullanırken bazen “bu fazla karmaşık ve fazla bozuk, bunu gerçekten çok kişi kullanıyor olamaz” diye düşündüğünüz şeyler olur; ebeveyn denetimi tam olarak öyle hissettiriyor
Sonuçta sadece ebeveynin yerine geçen bir şey
Ya çocuğunuzla ilgilenip ne yaptığını bilirsiniz ya da bilmezsiniz
Çocuğunuzun internette bir şeye karşı savunmasız olduğunu düşünüyorsanız, muhtemelen en doğrusu en baştan ona telefon vermemektir
Çocuk anlayacak kadar büyükse ihtiyacı olan şey yazılımsal ebeveyn denetimi değil, ebeveyndir; iyi bir ebeveynseniz de çocuğun uygulamalarında ebeveyn denetimine ihtiyaç olmaz
Ebeveyn denetimi ayrıca uygulamaların başka kaynaklardan kurulmasını da engelliyor ama ben Play Store uygulamalarındansa F-Droid uygulamalarını tercih ediyorum
Son olarak bu özellik, bir yazılım şirketi tarafından kontrol edildiğimiz ve “tehlikelerden korunduğumuz” yanılsamasını öğretiyor, eğitiyor ve pekiştiriyor
Bu, Windows 98 giriş ekranını atlatma türü bir hack numarası
https://i.imgur.com/BULPmCI.gif
Dürüst olmak gerekirse Google’ın sistem tasarımında Microsoft Windows 98 seviyesinde kötüleşeceğini beklemiyordum
Sıradan kullanıcılar bile adımları izleyerek bunu yapabilir
Güvenliğin önemli bir kısmı, düşünmeniz gereken şeyleri azaltmak için saldırı yüzeyini küçültmek gibi görünüyor
Giriş iletişim kutusunda araç ipuçlarını yazdırabilmenin ne gerekçesi olabilir diye insan düşünüyor
Yazdırma işin içine girdiği anda güvenli olmayan türlü üçüncü taraf bileşen de işin içine giriyor
Araç ipuçlarının ya da yardımın yazdırılmasına izin verilecekse bile, böyle özelliklerin kapatıldığı bir güvenlik bağlamı olması gerekirdi
PDF de benzer; 3D modeller ya da script yazımı gibi rastgele özelliklerin %99’u güvenlik exploit’lerinde kullanıldı
Varsayılanı basit tutup böyle özelliklerden kaçınmak daha iyi
Bu klasik görsel aklıma geldi: https://imgur.com/BULPmCI?r
Craigslist’ten ikinci el aldığım bir Pixel 2’de FRP atlatma için orijinal gönderidekine benzer bir teknik kullanmıştım
Küçükken can sıkıntısından bu ekrana saatlerce bakıp sonunda içeri sızarak ilk “o hissi” yaşadığım anın, hayatımın genel yönünü belirlediğini düşündüğüm bile oldu
İlk “hack” deneyimim ve bilgisayar sistemlerinin içini kurcaladığım günler aklıma geliyor; bu da IT ve mühendislik kariyerine uzandı
Halo PC’yi korsan kopyalarken bir truva atıyla aile bilgisayarını bozmuştum ve babam eve gelmeden önce bunu nasıl düzelteceğimi bulmam gerekiyordu
Ailem kişisel bilgisayarımıza aniden NetNanny benzeri ebeveyn denetimleri kurduğunda da bunları aşmam gerekmişti. O noktada interneti zaten birkaç yıldır kullanıyordum ve muhtemelen yukarıdaki özensiz korsan kopya yüzünden Comcast’ten bir mektup da gelmiş olabilir
Değişiklik izi bırakmadan netbook’u yeniden kullanılabilir hale getirme sürecinde Linux Live CD ve Linux ile tanıştım
Yarının hackerlarının hâlâ böyle bir eğitimden geçiyor olması sevindirici
Rastgele telnet bağlantıları kurabilen bir bağlantının bağlantısının bağlantısını bularak, ücretsiz dial-up hizmetini sadece kendi servisleri için kullandırmaya çalışan kısıtlamaları aşmaya uğraşıyordum
Örneğin tamu.edu’nun herkese açık sunucusunda Nethack oynamaya çalışıyordum ama tam alan adını artık hatırlamıyorum
Klasikti
Bununla ilgili önceki bir yazı da var
Google has a secret browser hidden inside the settings - https://news.ycombinator.com/item?id=36478206 - Haziran 2023, 312 yorum
Google Play Services’ın kendisine yeni izinler verebildiğini okudum[1]
Bu nasıl mümkün oluyor? root yetkisi mi var?
[1]https://developers.google.com/android/guides/permissions
Ancak bu uygulamaların erişebildiği izin listesi o kadar geniş ki, geliştirici yeterince çok şey tanımlarsa pratikte root gibi kullanılabilir
Fiilen
rootkullanıcısı değil ama körü körüne güveniliyor ve kullanıcı onayı olmadan uygulama kurmak gibi şeyler yapabiliyorGMS hakkında başka bir blog yazısında ele alındığı gibi, JS bridge ayrıcalıklı bağlamda çalışabiliyor
Android’i kurarken Google gizlilik politikasını kabul ettiğinizde buna da onay vermiş oluyorsunuz
Örneğin GrapheneOS’ta yapılabiliyor
Zaten kullanıcı izni olmadan uygulama kurup kaldırabiliyor
Geçmişte bu yüzden bazı sorunlar da oldu ama yeterince büyük olaylar yaşanmadı
Sandbox içine alınmış Play Services kullanan GrapheneOS etkilenmiyor gibi görünüyor
Phone uygulaması kişilerin içindeki web URL’lerini göremiyor ya da açamıyor gibi; Contacts uygulaması da sabitlenmiş modda yazıda geçen iki URL’yi açmayı başaramıyor
2023’teki önceki tartışmayı merak edenler için burada, 312 yorum
https://news.ycombinator.com/item?id=36478206