Browser-in-Browser macht die Website viel sicherer

    Zunächst möchte ich erläutern, dass sich diese Technologie in einem frühen Stadium der Entwicklung befindet, und ich möchte in diesem Thema auf ihre Rentabilität und Nützlichkeit eingehen. Daher gibt es noch keinen Prototyp.

    Die meisten Sicherheitslücken in Websites sind das Ergebnis einer Änderung in einer HTTP-Anfrage, des Spoofings von URLs oder Headern und anderer unerwarteter Aktionen für den Server. Ein gewöhnlicher Benutzer sollte dies nicht können, aber da eine moderne Anwendung aus einem Client und einem Server besteht, hat der Server in Wirklichkeit keine Kontrolle darüber, wie der Benutzer den Client-Teil verwendet.

    Aus diesem Grund ist die „Doppelvalidierung“ allgegenwärtig. Auf dem Bildschirm müssen Sie nur Objekte anzeigen, auf die der Benutzer zugreifen kann. Außerdem müssen Sie auf dem Server überprüfen, ob der Benutzer Zugriff auf dieses Objekt hat.

    So entstand die Idee zu SecureCanvas.- Verwandeln Sie den Standort in eine Art Geldautomat / Terminal, an dem der Benutzer nur die Maus eingeben und bewegen kann. Anstatt zu versuchen, böswillige Anfragen abzufangen, übertragen wir das Spiel einfach auf ein anderes Flugzeug und reduzieren die Angriffsfläche auf Null, sodass der Benutzer nur das tun kann, was er tun sollte - mit der Site interagieren.

    Bild

    Wenn der Benutzer nun bank.com herunterladen möchte, wird diese Site in einer virtuellen und kostengünstigen Webkit-Instanz in der Cloud geladen und die Synchronizer-Seite wird an den Benutzer zurückgegeben. Diese Seite überträgt alle Klicks und Klicks über einen Web-Socket in die Cloud. In der Cloud werden diese Aktionen bereits in einem echten Browser ausgeführt. Daher ist es einfach unmöglich, eine Konsole zu öffnen, Abfragen oder Quellcode zu betrachten.

    Zunächst sollte dies auf der Basis der VNC-Sitzung und des Canvas-Elements implementiert werden, damit der Cloud-Browser das Image der Site selbst zurückgibt. Aber diese Idee ist zum Scheitern verurteilt - die Bildqualität verschlechtert sich erheblich, Schriftarten sind verschwommen und Benutzer mit Netzwerklatenz werden nicht viel mögen. Ein vielversprechenderer Ansatz ist daher, wenn der Cloud-Browser spezielle DOM-Snapshots der Seite sendet und sich von früheren Snapshots unterscheidet (eine ähnliche Technologie wird in React.js für andere Zwecke verwendet).

    Auf diese Weise bleibt die Reaktionsfähigkeit der Site auf dem gleichen Niveau - Sie sehen dieselben greifbaren und gut gezeichneten Tags, aber mit dem Hintergrund wird alles, was Sie eingeben oder klicken, an den Cloud-Browser übertragen, und nur dort generiert die JavaScript-Logik Anforderungen an den realen bank.com-Server und ändert die externen Seitenaufruf.

    Es wird auch einen URL-Validator zum Schutz vor Spoofing geben. Sie können die Verwendung Ihrer URLs einfach untersagen und nur die Stammadresse herunterladen - dies ist ideal für Online-Banken. Sie können jede Adresse mit HMAC signieren, sodass nur der Name der Signatur die von Ihnen benötigte Adresse herunterladen kann (Sie können / private_info / 2 - SIGN ohne SIGN für diese Adresse nicht öffnen, und SIGN wird erst ausgegeben, nachdem Sie auf diesen Link in der Benutzeroberfläche geklickt haben). Am bequemsten ist es jedoch, nur die Adressen herunterzuladen, die zuvor heruntergeladen wurden (aufgrund der Interaktion mit der Benutzeroberfläche).

    Das Einzige, vor dem SecureCanvas nicht schützen kann, sind schnittstellenbasierte Schwachstellen. Wenn der Angriff nur über die Benutzeroberfläche der Site ausgeführt werden kann - geben Sie 'oder 1 = 1 in den Benutzernamen ein oder führen Sie eine Brute Force aus -, hilft dieser Site nichts.

    Die Technologie ist absolut realisierbar, es bleibt das Problem mit der Zielgruppe zu lösen (Online-Banken und andere Finanzdienstleistungen in den Sinn kommen) und Investitionen - wir brauchen sie wirklich. By the way, wenn die Idee Unsinn schien (und ich kann dich verstehen), müssen Sie auf der ersten Blick Form , die Technologie und dann bei $ 66M Investition in ihnen gemacht. Ja, das ist unmöglich. Oder was sie tun, wird nutzlos sein. Denn ohne KI ist es unmöglich zu verstehen, welche Anfragen JS erzeugen kann und welche nicht. Ihre Aufgabe ist im Übrigen in etwa ähnlich - das Verbieten von „nicht vermuteten“ Interaktionen mit der Site durch völlige Verschleierung von Antworten (Sicherheit durch Verschleierung ist zum Scheitern verurteilt).

    Aber wir implementieren SecureCanvas (natürlich nicht ohne Schwierigkeiten), und die Vorteile sind für normale Menschen auch mit bloßem Auge sichtbar („es ist wie ein Standort in einem Geldautomaten unter einem Schutzschirm“). Lass uns träumen oder streiten :)

    Jetzt auch beliebt: