Bezpečnostní inženýr odhalil v Android 16 chybu, která obchází VPN a prozrazuje vaši polohu. Google ji odmítl opravit
Nová funkce v Androidu 16 umožňuje běžné aplikaci vyslat data mimo VPN tunel a odhalit tak reálnou IP adresu uživatele. Google opravu odmítl.
Obsah článku
Když si v telefonu zapnete VPN a zapnete „Blokovat připojení bez VPN“, čekáte jednu věc: že žádný provoz neunikne mimo šifrovaný tunel. Přesně tuhle garanci ale rozbíjí chybu, kterou na konci dubna 2026 napsal bezpečnostní inženýr vystupující pod přezdívkou @cybaqkebm. Curyšský specialista na Android ukázal, že stačí nenápadná aplikace s běžnými oprávněními, a systém sám pošle UDP paket po fyzické síti, zcela mimo VPN. Neuniknou GPS souřadnice, ale veřejná IP adresa, z níž lze přes geolokační databáze odvodit přibližnou polohu i poskytovatele internetu. Google jednání 18 dní po nahlášení uzavřel. Oprava nepřijde.
Jak přesně únik houbí
Kořen problému leží v systémové službě ConnectivityManager a její nové metody registerQuicConnectionClosePayload. Ta byla do zdrojového kódu AOSP přidána commitem z 20. února 2025 jako optimalizace pro elegantní ukončení QUIC spojení; cílem bylo zajistit zbytečným probouzením modemu a napůl otevřeným spojením po ztrátě sítě.
Princip je přímočarý, mj. to nebezpečnější:
- Aplikace před systémovou službou otevřený UDP socket a libovolný blok dat.
- Když socket zanikne,
system_serverodešle payload přes původní fyzické síťové rozhraní (Wi-Fi nebo mobilní data). - Celý proces proběhne bez kontroly oprávnění, bez ověření obsahu payloadu a bez ohledu na to, zda má volající aplikace aktivní VPN lockdown.
K proof-of-concept exploitu stačily dvě automaticky udělované permise: INTERNETa ACCESS_NETWORK_STATE. Žádný speciální přístup, žádný kořen. Autor chybu potvrdil na Pixelu 8 s vybudováním BP22.250321.011 aktivní VPN od Proton VPN.
Co přesně unikátní, a co ne
Chyba nezpřístupňuje GPS souřadnice ani senzorová datový telefon. Útočníkův server ale uvidí reálnou veřejnou IP adresu uživatele místo IP adresy VPN exit nodu. Z veřejné IP lze standardními geolokačními databázemi určit město, někdy městskou čtvrť, a vždy poskytovatele internetu.
Pro běžného uživatele to znamená ztrátu anonymity, kterou VPN slibuje. Pro ohrožené skupiny (novináře, aktivisty, disidenty) může i přibližná lokace představovat reálné bezpečnostní riziko. Mullvad, jeden z nejznámějších poskytovatelů VPN, chybu jednoznačně potvrdil 12. května 2026 a uvedl, že ji bude sledovat. Zdůraznil přitom, že problém se netýká jen jeho, ale všech VPN aplikací na zasaženém Androidu 16.
Google říká: není to náš problém
Časová osa je výmluvná. Autor nahlásil chybu 12. dubna 2026. O šest dní později, 18. dubna, Android Security Team report uzavřel jako „Won’t Fix (Infeasible)“, tedy neopravitelné, a klasifikoval jako NSBC, tedy mimo třídu pro Android Security Bulletin. Podle zveřejněné komunikace citované autorem zprávy Google argumentoval tím, že scénář předpokládá přítomnost škodlivé aplikace v zařízení, a to nespadá do jejich modelu hrozeb.
Tady se láme podstata sporu. Vlastní dokumentace Androidu k funkci Always-on VPN říká, že systém může blokovat spojení, která nejdou přes VPN. Uživatel, který si tuto volbu vybere, očekávám absolutní garanci. Google mu ji ale v tomto konkrétním případě nedává, a nepovažuje to za chybu.
Podle nás jde o problém důvěry, není jen techniky. Přepínač v nastavení komunikuje jednoznačný slib. Pokud ho systém dodržet, vzhledem k vlastní optimalizační funkci by měl minimálně sdílet.
GrapheneOS to vyřešil jedním řádkem
Zatímco Google odmítl opravu, alternativní operační systém GrapheneOS funkci jednoduše vypnul. Commit z května 2026 natvrdo nastavuje mCloseQuicConnection = false a v popisu uvádí: „zakázat optimalizaci napájení CLOSE_QUIC_CONNECTION, která obchází VPN.“ Žádný složitý patch, žádné kompromisy.
Pikantní detail: autoři commitu dodávají, že samotné využití této optimalizace bylo v Chromiu i AOSP knihovně Cronet k květnu 2026 stále vypnuté. Google tedy hájí funkci, kterou jeho vlastní prohlížeč ani síťová knihovna reálně nepoužívá.
Co můžete udělat teď
Pro běžného uživatele bez technických znalostí neexistuje jednoduchý přepínač, který chybu neutralizoval. Jediná zveřejněná přímá mitigace vyžaduje ADB a USB debugging, to není řešení pro většinu lidí. Přesto má smysl dodržovat základní ochranu:
- Neinstalujte aplikaci mimo oficiální obchody.
- Odinstalovat nedůvěryhodné a zbytečné aplikace s přístupem k síti.
- Průběžně aktualizován systém i VPN klienta.
- Nepovažovat VPN na Androidu 16 za neprůstřelný killswitch, ale ani ji nevypínat.
Aktivní zneužívání zatím veřejně doložené není, existuje však funkční proof-of-concept a nezávislé potvrzení od Mullvadu.
VPN na Androidu 16 dál chrání běžný provoz, šifrování na veřejných sítích i skrytí IP před weby v normálním scénáři. Jen už není možné tvrdit, že systémový přepínač „Blokovat připojení bez VPN“ dělá přesně to, co říká. A Google s tím zatím nemá problém.