GrapheneOS, Google’ın yamalamayacağını söylediği Android VPN sızıntısını düzeltti
(cyberinsider.com)- GrapheneOS, Android’de “Always-On VPN” ve “Block connections without VPN” açık olsa bile gerçek IP adresinin sızmasına yol açabilen VPN atlatma açığını yeni güncellemede düzeltti
- Açık, Android 16 ağ yığınındaki QUIC bağlantı sonlandırma özelliğinden kaynaklanıyordu ve sıradan bir uygulama standart izinlerle UDP yüklerini
system_serveriçine kaydedebiliyordu - Uygulamanın UDP soketi yok edildiğinde, ayrıcalıklı system_server kayıtlı yükü VPN tüneli yerine doğrudan fiziksel ağ arayüzü üzerinden göndererek VPN kilidi korumasını aşıyordu
- Google, ilgili sorunu “Won’t Fix (Infeasible)” ve “NSBC” olarak sınıflandırdı; Android güvenlik duyurusu ölçütlerini karşılamadığına karar vererek mevcut tutumunu korudu
- GrapheneOS, release 2026050400 sürümünde “registerQuicConnectionClosePayload optimization” özelliğini devre dışı bıraktı; ayrıca Mayıs 2026 Android güvenlik yaması, hardened_malloc iyileştirmeleri, Linux çekirdeği güncellemeleri ve libpng için CVE-2026-33636 geri taşınmış düzeltmesini de içeriyor
Açığın çalışma şekli
- Yusuf’un teknik analizine göre savunmasız API, otomatik verilen INTERNET ve ACCESS_NETWORK_STATE izinlerine sahip sıradan bir uygulamanın keyfi UDP yüklerini
system_serveriçine kaydetmesine izin veriyordu - Ardından uygulamanın UDP soketi yok edildiğinde, Android’in ayrıcalıklı system_server süreci kayıtlı yükü VPN tüneli yerine cihazın fiziksel ağ arayüzü üzerinden doğrudan gönderiyordu
system_server, yükseltilmiş ağ yetkileriyle çalıştığı ve VPN yönlendirme kısıtlamalarından muaf olduğu için bu paket Android’in VPN kilidi korumasını tamamen aşıyordu- Güvenlik araştırmacısı lowlevel/Yusuf, açığı Proton VPN ve Android kilit modu birlikte etkinleştirilmiş Android 16 tabanlı bir Pixel 8 üzerinde gösterdi
- İlgili uygulama, VPN koruması tamamen etkin durumdayken bile cihazın gerçek genel IP adresini uzak bir sunucuya sızdırdı
Neden ve Google’ın yaklaşımı
- Google, soket beklenmedik şekilde yok edildiğinde uygulamaların QUIC oturumunu düzgün biçimde sonlandırabilmesi için bu özelliği devreye almıştı
- Uygulama, keyfi yükleri kabul ediyor ancak bu yüklerin meşru bir QUIC CONNECTION_CLOSE çerçevesi olup olmadığını doğrulamıyordu
- Uygulama ayrıca başlangıçta uygulamanın yalnızca VPN üzerinden geçen trafikle sınırlı olup olmadığını da kontrol etmiyordu
- Araştırmacı bu sorunu Android güvenlik ekibine bildirdi, ancak Google bunu “Won’t Fix (Infeasible)” ve “NSBC” (Not Security Bulletin Class) olarak sınıflandırdı
- Google, bu sorunun Android güvenlik duyurularına dahil edilme ölçütlerini karşılamadığına karar verdi
- Araştırmacı, yalnızca standart izinlerle bile herhangi bir uygulamanın tanımlanabilir ağ bilgilerini sızdırabileceğini belirterek yeniden değerlendirme talep etti; ancak Google mevcut tutumunu korudu ve 29 Nisan’da kamuya açıklanmasını onayladı
GrapheneOS güncellemesi ve azaltma yöntemi
- GrapheneOS, ağırlıklı olarak Google Pixel cihazlar için geliştirilen, gizlilik ve güvenlik odaklı Android tabanlı bir işletim sistemi; daha güçlü uygulama sandboxing’i, exploit azaltmaları ve Google hizmetlerine daha az bağımlılık isteyen kullanıcılar tarafından tercih ediliyor
- GrapheneOS, release 2026050400 sürümünde ilgili optimizasyonu tamamen devre dışı bırakarak VPN sızıntısını engelledi
- Yusuf, GrapheneOS’un bir haftadan kısa sürede düzeltmeyi yayımladığını belirtti
- En son sürüm, VPN sızıntısı düzeltmesine ek olarak Mayıs 2026 Android güvenlik yama seviyesinin tamamını da içeriyor
- Güncelleme; çeşitli hardened_malloc iyileştirmeleri, Android’in 6.1, 6.6 ve 6.12 dallarının genelinde Linux çekirdeği güncellemeleri ve libpng için CVE-2026-33636 geri taşınmış düzeltmesini içeriyor
- Yeni bir Vanadium tarayıcı derlemesi ve genişletilmiş Dynamic Code Loading kısıtlamaları da sunuluyor
- Standart Android kullanıcıları, ADB üzerinden close_quic_connection DeviceConfig bayrağını devre dışı bırakarak sorunu geçici olarak hafifletebilir
- Bu geçici çözüm geliştirici erişimi gerektiriyor
- Google gelecekteki bir güncellemede ilgili özellik bayrağını kaldırırsa bu azaltma yöntemi kalıcı olmayabilir
1 yorum
Hacker News yorumları
Eğer
system_serveryüksek ağ ayrıcalıklarıyla çalışıyor ve VPN yönlendirme kısıtlamalarının dışında tutuluyorsa, Android'de VPN aslında VPN değil gibi görünüyorBu hatadan bağımsız olarak, diğer kapalı işletim sistemlerinin de aynı şekilde çalışıp çalışmadığını merak ediyorum
Mullvad ve benzerleri bu sorunu uzun zaman önce ele almıştı
İnsanların aynı yazılan kelimeleri görüp bağlam farkını ayırt edememesi ve insani güveni bilgisayarın güven modeline yanlış biçimde genişletmesi endişe verici
Trafiği rastgele hedeflere doğrudan göndermeye izin veren bir açık ya da boşluk olup olmadığını bilmiyorum
system_serverve diğer kaçış yollarını düzeltmenin ne kadar zor olduğunu merak ediyorumManifest V3'te olduğu gibi, gözetlemeyi engellemek Google'ın çıkarına değil
Bu tür kısıtlamalar iş modeline zarar veriyor
Bu sorunun teknik olarak ciddi olmasının nedeni, sızıntının ayrıcalıklı süreç
system_serveriçinde gerçekleşmesiAndroid'in kendi kilit modu, hiçbir trafiğin VPN'i atlamayacağını açıkça vaat ediyor. Sistem fiziksel arayüz üzerinden paket gönderiyorsa bu vaat kullanıcı alanında değil çekirdek düzeyinde bozuluyor demektir; buna “güvenlik duyurusu düzeyinde değil” demek zor
Google 29 Nisan'da ifşaya izin verdiyse, o noktadan sonra bile ambargoya uyulup düzeltmenin Mayıs'a kadar ertelenmesi şaşırtıcı
Neden hemen açıklanmadığını bilmiyorum
İstesek de istemesek de GrapheneOS, Google'ın kontrol ettiği Android'e bağımlı
Bunun arkasında kötü ticari nedenler olduğunu biliyorum ama VPN sızıntılarını güvenlik sorunu olarak sınıflandırmayıp nasıl yüzlerini koruyabildiklerini anlamıyorum
Başlangıçta VPN, başka bir ağ üzerinden özel ya da kurumsal ağa erişmek içindi; ofisler arası bağlantı veya evden ofise erişim gibi. Ancak sonradan bir tür güvenlik aracına dönüştü
VPN koduna “telefon 5G üzerinden ofis yazıcısına erişebiliyorsa yeter” diye bakarsan, QUIC bağlantısının düzgün kapanmaması küçük bir hata olabilir. Ama “bu WireGuard tüneli ne olursa olsun kimliğimi korumalı” ya da “internete gidip gelen tüm trafiğin eksiksiz bir kopyası olmalı” diye bakarsan bu büyük bir sorun
Bence Android VPN'i ya da fiilen herhangi bir VPN hiçbir zaman gizlilik/güvenlik aracı olarak tasarlanmadı. Özellikle cihazda kod çalıştırabilen uygulamalara karşı hiç değil; cihazın kendisi de modem çipi dahil çeşitli ağ etkileşimleri yürütüyor
Google'ın bu hatayı kapatması doğruydu ama ödül programında bunu güvenlik açığı saymamasını anlayabiliyorum
Google bir reklam şirketi ve aynı zamanda saldırı yüklenicisi; VPN kullananların paket sızdırması her iki nedenle de işine gelir
Bu biraz da Meta'nın uçtan uca şifrelemeyi kaldırmasına benziyor
Daha çok “hayır, senin ne dediğini ve nasıl davrandığını tamamen görmek istiyoruz” gibi
GrapheneOS yüklü bir telefon edinmenin iyi bir yolunu merak ediyorum
GrapheneOS'u denemek istiyordum ama gerçekten bir Pixel satın alma konusunda tereddüt ediyorum. İkinci elde “a” serisi bile genelde 300 doların üstünde ve birkaç nesil geriye gitmek gerekiyor. Bootloader kilidinin açılabilir olup olmadığı da ayrı sorun. Yeni bir Pixel 10a için 449 dolar vermek şimdilik zor
Bu arada ben Pixel 10a'yı Google Fi çıkışında yaklaşık 300 dolara almıştım
Pixel 9a neredeyse aynı cihaz ve hâlâ sıfır olarak satılıyor
Operatör mağazası yerine normal perakendecilerden ya da Google Store'dan sıfır almak daha güvenli
İkinci el, OEM kilit açma durumu yüzünden kumara yakın; bu yüzden iade politikasının iyi olduğundan emin olmak ve satın almadan önce OEM kilit açmanın erişilebilir olduğunu doğrulamak gerekiyor
Temelde bootloader kilidinin kesinlikle açılabildiği Pixel 6 ve sonrası bir cihaz alman yeterli. Ama Pixel 6 yakında sadece asgari destek alacağı için Pixel 7 ve sonrasını tavsiye ederim. İkinci el ilanların çoğunda bootloader kilidi açılamıyor
Yani en iyisi doğrudan Google'dan almak ya da üzerinde zaten GrapheneOS/CalyxOS/LineageOS kurulu bir eBay ilanı bulmak veya satıcının açıkça bootloader kilidinin açılabildiğini belirttiği bir cihaz almak
Kişisel olarak, satıcı bunu zaten söylemediyse bootloader durumunu kontrol etmesini istemenin pek faydasını görmedim. Neredeyse hiç kimse kontrol sürecine girmek istemiyor, cevap büyük ihtimalle “olmuyor” oluyor, soruyu yanlış anlayıp sadece “unlocked phone” diye yanıtlayabiliyorlar ya da bu tür sorulardan bıkmış olabiliyorlar
Daha fazla telefon donanımını destekleme çalışmaları sürüyordu ve hangi marka olduğu bir süredir tahmin konusu olmuştu
GrapheneOS'u denemek için ucuz bir ikinci el Pixel 6 aldım ama pek hoşuma gitmedi
LineageOS'un kullanıcı deneyimi bana göre çok daha iyi. Paket yöneticisi yapısı matruşka gibi garip. Varsayılan “App Store”da sadece birkaç temel program var; bunlardan biri de başka bir paket yöneticisi olan Accrescent, ama onda da uygulama sayısı çok az olduğu için yine başka bir paket yöneticisine ihtiyaç duyuluyor. GrapheneOS tarafı F-Droid yerine Obtainium'u tercih ediyor gibi, bu da bana tuhaf geliyor
Tamamen açık kaynaklı bir paket yöneticisini çok daha fazla tercih ederim ve GitHub paketlerine güvenmek yerine onları dışarıda kaynaktan derlemenin ve mümkünse yeniden üretilebilir biçimde derlemenin gerçek bir değeri var. GrapheneOS'un güvenlik modeli garip biçimde merkezi görünüyor. Bildirilen gizlilik ve güvenlik faydalarını doğrudan değerlendirmek zor
Neden mutlaka kesin tanımlı ve ön yüklü bir uygulama mağazası olması gerektiği konusunda bu kadar ısrar edildiğini anlamıyorum
Uygulama mağazası işletmek, Android çatalını sürdürmek kadar emek istiyor ve zaten F-Droid, Play Store ile Aurora Store, Obtainium gibi seçenekler varken GrapheneOS geliştiricilerini bunun için devasa ek emek harcamadılar diye suçlamak zor
Varsayılan durumda sadece başlatıcı ve asgari işletim sistemi var; minimalizm isteyen biri için gereken her şey bu
Daha fazlasına ihtiyaç varsa kullanıcı nereye gideceğine kendi karar verir. Ben buna kullanıcıyı güçlendiren bir yaklaşım derim, sen ise rahatsızlık diyorsun gibi görünüyor. Öyleyse bu işletim sistemi sana uygun olmayabilir
“Open source” temelde bir lisans terimi
GrapheneOS'un “App Store”u, genel kullanım için gerekli en temel uygulamaları sunmak için var. Accrescent'in orada dağıtılmasının nedeni, gerçek bir uygulama deposu olarak Android'in güvenlik taban çizgisini takip etmesi; F-Droid ve Aurora Store ise bunu yapmıyor
F-Droid gibi üçüncü tarafların uygulamaları derleyip kötü niyetli davranışı kontrol etmesi yaklaşımında büyük bir değer görmüyorum. Bu tür kontrollerin güvenilirliği düşük ve geçmişte aşılmıştı. WireGuard'ın artık F-Droid'de olmamasının nedenlerinden biri de bu. Bir uygulamayı geliştiricisinden doğrudan alacak kadar güvenmiyorsan, bence o uygulamayı hiç kullanmamalısın
GrapheneOS'un gizlilik ve güvenlik avantajları, ortalama kullanıcı tarafından neredeyse fark edilmeyecek şekilde tasarlanmış durumda. Örneğin bellek bozulması hatalarını önlemeye yardımcı olan güçlendirilmiş bellek ayırıcısı ve memory tagging extension, ayrıca Google hizmetlerini kullanmaya izin verirken Google'ın cihazın tamamını kontrol etmesini engelleyen sandbox'lanmış Google Play kurulumu var
GrapheneOS'un App Store'u, AOSP'nin gerektirdiği birincil uygulama mağazası rolünü doldurmak için var. Ayrıca birincil uygulamaları işletim sistemi güncellemelerinden ayrı güncellemeye ve bazı durumlarda uygulamaları aynalamaya yarıyor
Accrescent, gizlilik ve güvenliğe odaklandığı için aynalanıyor. Şu anda alfa aşamasında ve uygulama gönderimleri kapalı, ama yakında açılması planlanıyor
Google Play, Google Play gerektiren uygulamalarla uyumluluk ve Play Store erişimi için aynalanıyor
GrapheneOS topluluğunun Obtainium'u tercih etmesinin nedeni, GitHub gibi yerlerden geliştirici imzalı uygulamaları alabilmesi. F-Droid ise ana deposundaki neredeyse tüm uygulamaları eski derleme altyapısı ve zayıf koordinasyon düzeniyle imzalayıp derliyor
GrapheneOS'un güvenlik modeli, AOSP güvenlik modelini devralıp bunun üzerine ek sertleştirmeler yapan bir model
GrapheneOS'ta etkileyici birçok teknik uygulama var ama Calyx tarafı pek çok şeyi daha sade ve saf Android'e daha yakın bir şekilde ele alıyor gibi görünüyor
GrapheneOS'un “VPN sızıntısı düzeltmesi” için
registerQuicConnectionClosePayloadoptimizasyonunu devre dışı bıraktığı ve desteklenen Pixel cihazlarda saldırı vektörünü fiilen etkisiz hale getirdiği söyleniyorYani GrapheneOS sızıntıyı optimizasyonu kapatarak “düzeltmiş” oldu
Daha önce HN'de QUIC övülmüş ve QUIC'in en çok kimin işine yaradığı sorusunu soran yorumlar düşük oy almıştı. QUIC kullanımı başkalarının çıkarına uyabilir ama benim için getirdiği ödünleşim uygun değil, bu yüzden QUIC trafiğini engelliyorum
QUIC bazen Android gibi Google'ın dağıttığı yazılımlarda varsayılan açık geliyor ve bazı durumlarda kapatmanın bir yolu bile olmuyor
GrapheneOS'un kaldırdığı şey yalnızca, uygulama çöktüğünde vb. işletim sisteminden QUIC bağlantısını otomatik kapatmasını isteme yöntemi. Sunucu açısından bağlantının açık kalıp kaynak tutmasını ve sonra boşta kalma zaman aşımının ardından kapatma sürecine girmesini önlediği için bir optimizasyon, ama istemci açısından bir optimizasyon değil
GrapheneOS bunun dışında da yaklaşık 5 VPN sızıntısını düzeltti ve ek düzeltmeler üzerinde çalışıyor. Android'in mevcut VPN uygulaması profil başına VPN şeklinde, ancak profiller hâlâ kendi ağ ad alanlarını kullanmıyor; DNS çözücüsü ile çeşitli merkezi hizmetlerin de VPN desteğini doğru ele alması gerekiyor, bu da sızıntılara yol açabiliyor
İleride VPN mimarisini geliştirip sızıntılara karşı çok daha dayanıklı hale getirmeyi planlıyorlar. Uygulamaları veya uygulama gruplarını sanal makinede çalıştırma desteği de gelecek; bu da daha güçlü koruma sağlayabilir
QUIC'in kendisi harika; bu, protokolün değil daha çok gözetleme işletim sistemi Google Android'in bir özelliği
Üstelik son sürüm öncesi işletim sisteminde kontrol ettiğimde de düzgün çalışmıyordu
Saf Android casus yazılım ve reklam yazılımıdır
Eskiden böyle yazılımlara kötü amaçlı denirdi ve kaldırılırdı, ama artık varsayılan haline geldi
Kullanıcıların %99'unun umurunda olmadığını bildiklerine göre baskı kurulabilecek tek yer telefon üreticileri gibi görünüyor. Bu alanda anlamlı etkiye sahip herhangi birini etkileyecek gücüm olmadığı için insan kendini çaresiz hissediyor