Das Unternehmen Google mit der Implementierung einer neuen API in Chrome , die es Webanwendungen ermöglicht, direkte Netzwerkverbindungen unter Verwendung der Protokolle TCP und UDP herzustellen. Im Jahr 2015 gab es bereits einen Versuch des W3C-Konsortiums, die API ââ, zu standardisieren, doch die Mitglieder der Arbeitsgruppe konnten keinen Konsens erreichen, und die Entwicklung dieser API wurde eingestellt.
Die Notwendigkeit, eine neue API hinzuzufĂŒgen, wird durch die Bereitstellung der Möglichkeit erklĂ€rt, mit NetzwerkgerĂ€ten zu interagieren, die eigene Protokolle verwenden, die ĂŒber TCP und UDP arbeiten, und die keine Interaktion ĂŒber HTTPS oder WebSockets unterstĂŒtzen. Es wird angemerkt, dass die API Raw Sockets die bereits im Browser vorhandenen Low-Level-Schnittstellen WebUSB, WebMIDI und WebBluetooth ergĂ€nzen wird, die die Interaktion mit lokalen GerĂ€ten ermöglichen.
Um negative Auswirkungen auf die Sicherheit zu vermeiden, wird die API Raw Sockets nur Netzwerkzugriffe zulassen, die mit Zustimmung des Nutzers initiiert werden, und die Liste der von Nutzern genehmigten Hosts einschrĂ€nken. Der Nutzer muss den ersten Verbindungsversuch zu einem neuen Host ausdrĂŒcklich bestĂ€tigen. Mit einem speziellen Flag kann der Nutzer die wiederholte Abfrage der BestĂ€tigung bei weiteren Verbindungen zum selben Host deaktivieren. Um DDoS-Angriffe zu verhindern, wird die IntensitĂ€t der Zugriffe ĂŒber Raw Sockets begrenzt, und das Senden von Anfragen ist nur nach einer Interaktion des Nutzers mit der Seite möglich. UDP-Pakete, die von nicht genehmigten Hosts empfangen werden, werden ignoriert und erreichen die Webanwendung nicht.
Die anfĂ€ngliche Implementierung sieht keine Erstellung von hörenden Sockets vor, jedoch wird in Zukunft nicht ausgeschlossen, dass Aufrufe fĂŒr den Empfang von eingehenden Verbindungen von localhost oder einer Liste bekannter Hosts bereitgestellt werden. Auch der Schutz vor Angriffen ââ wird erwĂ€hnt (der Angreifer kann auf DNS-Ebene die IP-Adresse des genehmigten Domainnamens Ă€ndern und Zugriff auf andere Hosts erhalten). Der Zugang zu Domains, die in 127.0.0.0/8 aufgelöst werden, sowie zu Intranets wird voraussichtlich blockiert (Zugriffe auf localhost sollen nur nach expliziter Eingabe der IP-Adresse im BestĂ€tigungsformular gestattet werden).
Unter den Risiken, die bei der Implementierung einer neuen API auftreten können, wird die mögliche Ablehnung durch Hersteller anderer Browser hervorgehoben, was zu KompatibilitĂ€tsproblemen fĂŒhren könnte. Die Entwickler der Engines Mozilla Gecko und WebKit haben bisher zur möglichen Implementierung der API Raw Sockets bezogen. Aber Mozilla hatte zuvor fĂŒr das Projekt Firefox OS (B2G) bereits eine . Falls die API Raw Sockets in der ersten Phase genehmigt wird, ist geplant, sie in Chrome OS zu aktivieren und sie anschlieĂend den Chrome-Nutzern in anderen Systemen anzubieten.
Web-Entwickler zur neuen API und brachten viele neue Ideen ĂŒber ihre Anwendung in Bereichen vor, in denen die APIs XMLHttpRequest, WebSocket und WebRTC nicht ausreichen (von der Erstellung von Browser-Clients fĂŒr SSH, RDP, IMAP, SMTP, IRC und Druckprotokolle bis zur Entwicklung verteilter P2P-Systeme mit DHT (Distributed Hash Table), UnterstĂŒtzung fĂŒr IPFS und Interaktion mit spezifischen Protokollen von IoT-GerĂ€ten).
Quelle: opennet.ru
