Pro Chrome se vyvíjí API pro přímou komunikaci přes TCP a UDP

Společnost Google zahájila implementaci nového API v Chromu Raw Sockets, které umožňuje webovým aplikacím navazovat přímá síťová spojení pomocí protokolů TCP a UDP. V roce 2015 se konsorcium W3C pokusilo o standardizaci API „TCP a UDP Socket“, ale členové pracovní skupiny nedosáhli konsensu a vývoj tohoto API byl zastaven.

Potřeba přidání nového API je odůvodněna možností interakce se síťovými zařízeními, která používají vlastní protokoly fungující nad TCP a UDP a nepodporují interakci přes HTTPS nebo WebSockets. API Raw Sockets doplní již existující nízkoúrovňové programovací rozhraní v prohlížeči, jako jsou WebUSB, WebMIDI a WebBluetooth, které umožňují komunikaci s místními zařízeními.

Aby se minimalizoval negativní vliv na bezpečnost, API Raw Sockets povolí síťové požadavky pouze iniciované se souhlasem uživatele a omezené seznamem povolených hostitelů. Uživatel musí výslovně potvrdit první pokus o spojení s novým hostitelem. Pomocí speciálního příznaku bude moci uživatel vypnout zobrazování opakovaných žádostí o potvrzení operace při opakovaných připojeních k danému hostiteli. Aby se zabránilo DDoS útokům, bude intenzita požadavků přes Raw Sockets omezena a odesílání žádostí bude možné pouze po interakci uživatele se stránkou. UDP pakety přijaté od hostitelů, které uživatel neschválil, budou ignorovány a nedostanou se k webové aplikaci.

Počáteční implementace neplánuje vytváření poslouchajících soketů, ale v budoucnu se nevylučuje poskytnutí volání pro příjem příchozích spojení s localhostem nebo seznamem známých hostitelů. Také se zmiňuje potřeba ochrany před útoky „DNS rebinding“ (útočník může na úrovni DNS změnit IP adresu pro schválené doménové jméno a získat přístup k jiným hostitelům). Přístup k doménám, které se resolvují na 127.0.0.0/8 a intranetové sítě, se plánuje blokovat (žádosti k localhostu budou povoleny pouze při výslovném zadání IP adresy v potvrzovací formě).

Mezi riziky, která mohou vzniknout při realizaci nového API, je jeho možné odmítnutí výrobci jiných prohlížečů, což může vést k problémům s kompatibilitou. Vývojáři enginů Mozilla Gecko a WebKit zatím nevyjádřili svůj postoj k možnému zavedení API Raw Sockets, nicméně společnost Mozilla již dříve navrhla podobné API. V případě schválení v první fázi plánujeme aktivaci API Raw Sockets v Chrome OS a následně nabídnout uživatelům Chrome v dalších systémech.

Weboví vývojáři kladně reagovali na nové API a navrhli mnoho nových nápadů na jeho využití v oblastech, kde API XMLHttpRequest, WebSocket a WebRTC nestačí (od vytváření webových klientů pro SSH, RDP, IMAP, SMTP, IRC a tiskových protokolů až po vývoj distribuovaných P2P systémů s DHT (Distributed Hash Table), podporu IPFS a interakci se specifickými protokoly IoT zařízení).

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster