Remote-Controlled Browsers System - "ferngesteuerter Browser"

cuco

Moderator
Teammitglied
Registriert
1 Dez. 2011
Beiträge
7.181
Hat jemand schon mal so etwas umgesetzt? Gibt's so etwas in open source und/oder browserbasiert? Kann man so vielleicht sogar eine Art Browser im Browser umsetzen? Also ein abgeschotteter Server lädt und rendert (unsichere) Webseiten, während ein Client nur die gerenderten Webseiten bekommt?

Hintergrundinfos dazu:
 
Im einfachsten Fall wäre das eine VNC-Verbindung vom "Client" auf einen als sicher angenommenen Rechner ("Server"), wo der Webbrowser läuft.
Ich hatte sowas vor Jahren mal getestet (nicht aus Sicherheits- sondern aus Performancegründen - der "Server" mit dem laufenden Webbrowser war um Größenordnungen schneller als der "Client"), fand das Ergebnis aber zumindest in meinem Fall nicht befriedigend, weil der Overhead den VNC mitbrachte den Vorteil, den fetten Browser nicht auf dem schwachen Client laufen zu lassen, wieder zunichte machte.

Diese Performance-Geschichte könnte natürlich in einem anderen Setup anders aussehen, aber das Grundproblem, Webseiten auf einem anderen System zu rendern und dann das vollständig gerenderte Bild zu übertragen bleibt natürlich. Das wird sich immer träger anfühlen, als den Browser lokal auszuführen.
Wenn es nur um die sicherheitstechnische Trennung von Render- und Nutzersystem geht, dann kann man das rein lokal auch deutlich performanter umsetzen. Ich habe z.B. einen "Schmuddelbrowser" für Google, Amazon und andere Datenkraken in einem chroot, den ich mir per Xephyr auf meinem Produktivsystem anzeigen lasse.
 
VNC ist auch noch eine gute Idee - das ginge schließlich auch browserbasiert. Und open source. Und ohne spezielle Dinge - kleine VM, VNC (geschützt) ins Netz, fertig. Irgendwo habe ich auch noch meine Infos über das Aufsetzen Apache Guacamole rumfliegen, vor ein paar Jahren mal zweimal gemacht - vielleicht sollte ich das nochmal wieder ausgraben, das könnte für den Fall genau richtig sein, fällt mir dabei ein.
 
Was das BSI nicht alles für tolle Sachen erfindet. Fast hat man den Eindruck, die erfinden eines Tages das Rad.
 
Einige Beispiele für solche Projekte sind:

WebGap (Open Source): WebGap ist ein Open-Source-Projekt, das Webseiten in einem isolierten Container lädt und eine sichere VNC-Verbindung (Virtual Network Computing) zum Anzeigen der gerenderten Webseite bereitstellt. GitHub-Repository: https://github.com/gliderlabs/webgap

Browserless (teilweise Open Source): Browserless ist ein browserbasiertes Framework, das Headless-Browser-Instanzen in der Cloud bereitstellt. Mit Browserless können Benutzer über einen isolierten Browser auf Webinhalte zugreifen. GitHub-Repository: https://github.com/browserless/chrome

Weitere Optionen wären u.U. auch:

Pyodide: Pyodide ist ein Python-Interpreter, der in WebAssembly kompiliert wurde und direkt im Browser ausgeführt werden kann. Mit Pyodide können Sie Python-Code ausführen, ohne dass Sie auf dem Client eine Python-Installation benötigen. Es ist zwar nicht speziell für Browser-Isolation entwickelt, kann aber in Kombination mit anderen Technologien dazu beitragen, eine isolierte Browserumgebung zu erstellen. GitHub-Repository: https://github.com/pyodide/pyodide

Puffin Browser: Der Puffin Browser ist ein cloud-basierter Browser, der Webseiten auf entfernten Servern rendert und anschließend auf das Endgerät des Benutzers streamt. Die Open-Source-Version von Puffin ist als Puffin Web Browser Core auf GitHub verfügbar. Dieses Projekt ist jedoch seit einiger Zeit nicht mehr aktiv, und es gibt keine Garantie für zukünftige Updates oder Sicherheit. GitHub-Repository: https://github.com/puffinbrowser/puffin-core

Guacamole: Apache Guacamole ist ein clientloses Remote-Desktop-Gateway, das den Zugriff auf Desktop-Umgebungen über den Browser ermöglicht. Guacamole kann dazu verwendet werden, einen isolierten Browser auf einem entfernten System bereitzustellen und Benutzern den Zugriff darauf über einen Webbrowser zu ermöglichen. GitHub-Repository: https://github.com/apache/guacamole-client

Webrecorder: Webrecorder ist ein Open-Source-Tool, das es ermöglicht, Webseiten und Webinhalte zu archivieren und aufzunehmen. Es kann auch dazu verwendet werden, Webinhalte in einer isolierten Umgebung bereitzustellen, indem es die aufgenommenen Webinhalte anzeigt, ohne dass der Benutzer direkt auf die ursprüngliche Webseite zugreifen muss. GitHub-Repository: https://github.com/webrecorder/webrecorder
 
Danke dir!
- der Link auf WebGap verweist ins digitale Nirvana. Per Google-Suche landet man bei einem seit 3 Jahren toten GitHub sowie einer Firma, die laut Bewertungen ihre Kunden abzockt (Erhöhung der Gebühren von 5$ auf 50$ pro Monat ohne Ankündigung).
- Browserless scheint weniger ein Browser im Browser o.ä. zu sein, sondern eher ein fernsteuerbarer headless-Browser, über den man API-Calls ausführen kann - z.B. zum automatisierten Web-Scraping.
- Pyodide ist ein Python-Interpreter im Browser. Das ist was anderes.
- Puffin Browser: Das verlinkte GitHub ist genau so wenig existent wie das von WebGap. Grundsätzlich scheint es genau das zu tun, was ich gerne möchte. Aber closed source, nicht self-hosted, Abo-Modell, ... :(
- Apache Guacamole: s.o., damit habe ich in anderem Zusammenhang selbst schon mal gearbeitet. Zwar eigentlich auch was anderes, weil man hier eher ganze VNC- und SSH-Sessions durch HTTP(S) streamt, aber grundsätzlich wäre es damit lösbar. Man hätte dann halt z.B. eine VM mit Browser, die man per VNC darüber streamt und fernbedient.
- Webrecorder: scheint es ebenfalls nicht mehr zu geben, leitet aber auf "Conifer" von "Rhizome" um. Eher zum Archivieren von Webseiten gedacht als zum interaktiven Surfen.

Puffin wäre also echt klasse gewesen, da es genau das zu tun scheint. Aber so bin ich doch eher an Guacamole hängen geblieben...
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben