Pre prehliadač Chrome sa vyvíja rozhranie API pre priamu komunikáciu TCP a UDP

Google začala implementovať nové rozhranie API v prehliadači Chrome Surové zásuvky, ktorý umožňuje webovým aplikáciám vytvárať priame sieťové spojenia pomocou protokolov TCP a UDP. V roku 2015 sa konzorcium W3C už pokúsilo štandardizovať API “Zásuvka TCP a UDP“, ale členovia pracovnej skupiny nedosiahli konsenzus a vývoj tohto API bol zastavený.

Potreba pridať nové API sa vysvetľuje poskytnutím možnosti interakcie so sieťovými zariadeniami, ktoré používajú natívne protokoly bežiace nad TCP a UDP a nepodporujú komunikáciu cez HTTPS alebo WebSockets. Je potrebné poznamenať, že rozhranie Raw Sockets API doplní nízkoúrovňové programovacie rozhrania WebUSB, WebMIDI a WebBluetooth, ktoré sú už dostupné v prehliadači a ktoré umožňujú interakciu s lokálnymi zariadeniami.

Aby sa predišlo negatívnemu vplyvu na bezpečnosť, rozhranie Raw Sockets API povolí iba sieťové volania iniciované so súhlasom používateľa a obmedzené na zoznam hostiteľov povolených používateľom. Používateľ bude musieť výslovne potvrdiť prvý pokus o pripojenie nového hostiteľa. Pomocou špeciálneho príznaku môže používateľ zakázať zobrazovanie opakovaných žiadostí o potvrdenie operácie pri opakovaných pripojeniach k rovnakému hostiteľovi. Aby sa predišlo DDoS útokom, intenzita požiadaviek cez Raw Sockets bude obmedzená a odosielanie požiadaviek bude možné až po interakcii používateľa so stránkou. Pakety UDP prijaté od hostiteľov neschválených používateľom budú ignorované a nedostanú sa do webovej aplikácie.

Prvotná implementácia nepočíta s vytvorením načúvacích zásuviek, ale v budúcnosti je možné poskytnúť volania na prijímanie prichádzajúcich spojení z localhost alebo zoznam známych hostiteľov. Spomína sa aj potreba chrániť sa pred útokmi “Previazanie DNS"(Útočník môže zmeniť IP adresu užívateľom schváleného názvu domény na úrovni DNS a získať prístup k iným hostiteľom). Plánuje sa blokovanie prístupu k doménam, ktoré rozlišujú na 127.0.0.0/8 a intranetové siete (povolenie prístupu na localhost sa navrhuje len vtedy, ak je IP adresa explicitne zadaná v potvrdzovacom formulári).

Medzi riziká, ktoré môžu nastať pri implementácii nového API, je jeho možné odmietnutie výrobcami iných prehliadačov, čo by mohlo viesť k problémom s kompatibilitou. Vývojári motorov Mozilla Gecko a WebKit sú stále nevyšlo svoj postoj k možnej implementácii Raw Sockets API, ale Mozilla predtým navrhla pre projekt Firefox OS (B2G) podobné API. Ak bude v prvej fáze schválené rozhranie Raw Sockets API, plánuje sa aktivácia rozhrania Raw Sockets API v systéme Chrome OS a až potom sa ponúkne používateľom prehliadača Chrome v iných systémoch.

Weboví vývojári jednoznačne reagoval na nové API a vyjadril mnoho nových myšlienok o jeho aplikácii v oblastiach, kde API XMLHttpRequest, WebSocket a WebRTC nestačia (od vytvárania klientov prehliadača pre SSH, RDP, IMAP, SMTP, IRC a tlačových protokolov až po vývoj distribuovaných P2P systémov s DHT (Distributed Hash Table), podpora IPFS a interakcia so špecifickými protokolmi IoT zariadení).

Zdroj: opennet.ru

Pridať komentár