Firefox 154 se ptá na svolení, než web otevře WebSocket do místní sítě
Firefox 154 vyšel 18. srpna 2026 a jeho ochrana místní sítě nově platí i pro WebSockety. Než stránka otevře spojení na router, tiskárnu nebo na službu běžící přímo v počítači, musí si říct o svolení. Chrome tenhle díl doplnil už v březnu.

Mozilla vydala Firefox 154 18. srpna 2026. Mezi novinkami je jedna věta, kterou si přečtou hlavně vývojáři: ochrana místní sítě se nově vztahuje i na WebSockety. Stránka, která zkusí otevřít WebSocket na zařízení v lokální síti, se musí nejdřív zeptat uživatele.
Tři adresní prostory a dvě oprávnění
Ochrana se jmenuje Local Network Access, zkratkou LNA, a vzniká jako specifikace ve skupině WICG. Dělí cílové adresy do tří skupin. Public je běžná adresa na internetu. Local je adresa dosažitelná jen v místní síti, typicky 192.168.0.1 nebo jméno končící na .local. Loopback je samotný počítač, tedy 127.0.0.1 a localhost. Míří-li požadavek z veřejné stránky do některé z těch dvou soukromějších skupin, prohlížeč se ptá.
Oprávnění jsou podle dokumentace na MDN dvě: local-network a loopback-network. Původní jednotné local-network-access zůstává jako alias kvůli zpětné slučitelnosti, ale výsledek dotazu na jeho stav je jen složenina obou novějších – stačí, aby uživatel jedno z nich zakázal, a alias hlásí zákaz taky. Požádat o oprávnění smí jen stránka v zabezpečeném kontextu; z HTTP stránky požadavek do místní sítě selže bez ptaní.
Odkud se ta ochrana vzala
Důvod je starší než specifikace. Cizí stránka mohla dosud tiše sáhnout na router ve stejné síti a přepsat mu třeba adresu DNS serveru, takže dotazy uživatele odpovídá server, který si vybral útočník. MDN k tomu dodává, že útoku nahrává, jak často zůstává u domácích zařízení výchozí heslo správce. Stejným způsobem šlo vyměnit firmware routeru nebo odklonit reklamní provoz.
Druhý důvod ukázal v červnu 2025 výzkum Local Mess. Skripty Meta Pixel a Yandex Metrica na tisících webů posílaly data na pevné porty localhostu a tam je poslouchaly nativní aplikace Facebooku, Instagramu, Yandex Map a Yandex Browseru na témž telefonu s Androidem. Webová cookie _fbp se tím propojila s trvalou identitou uživatele v aplikaci, a to bez ohledu na mazání cookies i na anonymní režim. Meta podle autorů výzkumu praktiku zastavila 3. června 2025, Yandex rovněž. Šlo přitom o WebRTC a o obyčejné HTTP, ne o WebSockety; společné je jen to, že prohlížeč pustil skript na loopback bez jediné otázky. Odbornou práci pod názvem Bridges to Self mají autoři podle vlastní stránky vydat na 35. sympoziu USENIX Security.
Implementaci v prohlížeči Firefox představil na FOSDEM 2026 Sunil Mayya z týmu, který má v Mozille na starost síťovou vrstvu. Postup práce je vidět v záznamu 1481298 v Bugzille.
Co se změní vývojáři pod rukama
Nejvíc to pocítí weby, které mluví s programem běžícím na počítači uživatele – čtečky karet, tiskové utility, přihlašovací klienti, ladicí server během vývoje. Nově jim před prvním spojením vyskočí dialog, a když uživatel odmítne, spojení neproběhne.
Udělené oprávnění zároveň uvolní kontrolu smíšeného obsahu, protože místní zařízení si veřejně důvěryhodný certifikát obvykle opatřit nedokáže. Automaticky to platí u zapsané soukromé IP adresy a u jmen na .local. Když ale veřejné jméno teprve po překladu skončí na místní adrese, musí to skript prohlížeči říct sám vlastností targetAddressSpace:
fetch("http://internal.example.com/status", {
targetAddressSpace: "loopback",
});
Druhá past číhá u rámů. Směrnice local-network a loopback-network v hlavičce Permissions-Policy mají výchozí seznam self, takže vložený dokument z cizího původu se do místní sítě nedostane, dokud mu to stránka výslovně nedovolí v atributu allow. A dovolit to musí každému původu, přes který rám během práce projde – u přihlašovacích řetězců se snadno zapomene na ten prostřední.
Firefox to zapínal po kouskách, Chrome byl dřív
Mozilla ochranu nasazovala po etapách. Firefox 147 ji 13. ledna 2026 zapnul ve výchozím stavu jen lidem, kteří mají přísný režim ochrany před sledováním. Verze 151 ji 19. května začala rozdávat všem, verze 153 ji 21. července prohlásila za výchozí a verze 154 k ní teď přidala WebSockety.
Google byl napřed. Dialog o svolení Chrome zavedl ve verzi 142, která se do stabilní větve dostala 22. října 2025. Podle záznamu na Chrome Platform Status pak verze 145 rozdělila jedno oprávnění na dvě, verze 146 přidala dvě podnikové zásady a verze 147 – stabilní od 25. března 2026 – rozšířila omezení na WebSockety a WebTransport. Firefox tedy WebSockety uzavřel zhruba pět měsíců po konkurenci.
Hotové to není ani teď. Specifikace počítá vedle podřízených požadavků a WebSocketů i s WebTransportem a s WebRTC, jenže poznámky k vydání Firefoxu 154 se o těch dvou nezmiňují. A LNA je pořád jen inkubovaný návrh ve WICG, ne dokončený standard – což je u věci, kterou už dva velké prohlížeče vynucují ve výchozím nastavení, poněkud obrácené pořadí.
Zdroje
- Poznámky k vydání Firefoxu 154, Mozilla, 18. srpna 2026
- Local network access, MDN Web Docs
- Local Network Access, specifikace WICG
- Local network access restrictions, Chrome Platform Status
- Covert Web-to-App Tracking via Localhost on Android, Local Mess, červen 2025