Nachdem du das gelesen hast, wirst du deine Browser mit ganz anderen Augen sehen.
* Hinweis
*Dieser Artikel besteht aus drei, vielleicht aber auch aus vier Teilen, die ich noch Posten und hier verlinken werde.
Der Web-Browser ist so ziemlich das wichtigste Stück Software auf einem Computer.
Der Web-Browser ist das Programm, mit dem wir die Internetseiten öffnen und betrachten können. Der Web-Browser ist die meist benutzte Software auf einem Computer. Auch Smartphones sind Computer und nutzten Web-Browser.
Web-Browser können Daten übermitteln und den Nutzer ausspionieren. Deswegen sollte man sich die Zeit nehmen den Web-Browser unter die Lupe zu nehmen und ihn kennenlernen. Als Nutzer sollte man schon die einzelnen Funktionen seines Browser kennen und verstehen.
Dieses Thema werden wir in diesem Artikel behandeln, auch werden weiterführende Artikel tu diesem Thema veröffentlicht werden, die ich hier verlinken werde.
Die Web Engine
Web-Browser unterscheiden sich im Kern durch ihre „browser engine“, auch bekannt unter dem Begriff „layout engine“, „rendering engine“ oder „browser engine“.
Die Browser-Engine ist der Kern des Web-Browsers und ist der Teil des Browsers, der die Programmierung der Internetseite, also den Code, in eine für Menschen lesbare Ausgabe übersetzt bzw. umwandelt.
Der Screenshot zeigt wie die Browser-Engine arbeitet. Auf der rechten Hälfte des Bildes, ist die Programmierung bzw. der Quellcode, der Internetseite „DuckDuckGo“ zu sehen; und auf der linken Hälfte, sehen wir die übersetzte (renderd) Ausgabe des Codes.
Web Engine Typen
Es gibt vier Haupt Browser-Engines: WebKit, Gecko, Blink und Trident.
Auf diesen Engines, sind fast alle gängigen Web-Browser aufgebaut. Der Hauptunterschied der Engines ist, welche Web-Standards und Protokolle sie übersetzten und da gibt es keine Unterschiede; alle Browser-Engens beherrschen alle Standards und Protokolle.
Einen unterschied zwischen den Endgens kann der Benutzer manchmal sehen; die Darstellung der Internetseiten weicht in manchen Fällen etwas voneinander ab. Es gibt hauptsächlich nur kleine oder keine Unterschiede in der Darstellung der Internetseiten, sie unterscheiden sich durch die verwendeten Schriftarten und Größeneinstellungen der Schrift. Viele Internetseiten benutzen eigene Schriftarten, dies werden beim Laden der Seite mit-heruntergeladen und angezeigt; somit sieht man auf den meisten Internetseiten keinen unterschied zwischen den Engines. Es gibt noch andere Abweichungen: auf manchen Webseiten werden die Tabellen etwas anders dargestellt und der Style bzw. das Design der Seite, kann etwas voneinander abweichen.
Browser Geschwindigkeit
Die Geschwindigkeit der Browser-Engine war früher ein großes Thema und Opera hatte die schnellst Web-Engine; was den Browser auch für einige Zeit, zum schnellsten Browser der Welt machte. Das ist heutzutage kein Thema mehr, die Engines sind alle fast gleich schnell und die unterscheide sind für den Nutzer kaum oder nicht sichtbar. Heutzutage ist die Browser Geschwindigkeit von anderen Faktoren abhängig; Beispielsweise, wird das Surfverhalten des Nutzers analysiert und häufig aufgerufen Internetseiten, in einem Chach gespeichert und aus diesem Chache abgerufen. Beim Chatten z.B., wird nicht die gesamte Internetseite aktualisiert, sondern nur der Teil der Seite, in dem sich etwas verändert hat; so wird Ladezeit eingespart und das surfen fühlt sich schneller an. Es gibt eine ganze reihe von Methoden die Ladezeiten verkürzen, wie zum Bleistift, das komprimieren der Daten. Dabei wird die Internetseite wie beim Zippen gepackt, ist dadurch kleiner und kann schneller über das Internet geladen werden, im Browser wir sie dann entpackt und angezeigt.
Wodurch unterscheiden sich die Browser voneinander?
Web-Browser unterscheiden sich durch bestimmte Funktionen voneinander. Manche Browser haben bestimmte Funktionen und andere nicht. Das bedeutet aber nicht, dass diese Funktionen bei bestimmten Web-Browsern nicht verfügbar sind, sie sind nur im Menü nicht sichtbar; anders gesagt, der Hersteller des Web-Browsers möchte nicht das der Benutzer diese Funkion nutzt. Das hat verschieden Gründe; manche Hersteller verfolgen die Philosophie, dass der Browser einfach zu bedienen sein muss und viele Einstellungsmöglichkeiten verkomplizieren das ganze. Um dem Nutzer das bedienen des Web-Browsers so einfach wie möglich zu gestalten, macht der Hersteller die Einstellungen und der Zugang zu diesen Einstellungen wird gesperrt, in dem der Menüpunkt aus dem Menü entfernt wird.
Diese Philosophie verfolgt zum Beispiel „Apple“, das gesamte Betriebssystem von Apple (OS-X, iOS) ist so aufgebaut und selbstverständlich auch der Safari-Browser.
Es gibt auch andere Web-Browserhersteller die, die gleiche Philosophie vertreten. Manche Menschen finden es auch am besten, wenn alles voreingestellt ist und sie einfach los surfen können. Das ganze hat jedoch einen Hacken: die Anonymität geht dabei verloren, da der Web-Browser so gut wie alle Funktionen zulässt, damit auch alles einwandfrei funktioniert.
In letzter Zeit haben sich einige Web-Browserhersteller der Philosophie zugewannt, ihren Browser anonym zu gestalten, in dem sie in den Voreinstellungen (Werkseinstellungen), bestimmte Funktionen ausschalten, beziehungsweise einschalten; so wie der Brave-Browser. Der Hersteller setzt die Einstellungen so vor, dass der Brave-Browser einige Funkionen nicht ausführt und somit Informationen die nicht zum anzeigen der Webseite nicht benötigt werden, auch nicht sendet Bzw. blockiert. Jedoch sind diese Einstellungen sehr lasch und eher Augenwischerei als echte Anonymität.
Anonymität im World Wide Web
Ein Web-Browser lässt sich nicht so einstellen, dass alle Webseiten funktionieren und gleichzeitig keine Identitätsinformationen übermittelt werden. Ein Beispiel: Wenn ich mich in das Computer Base Konto anmelden möchte, muss ich Javascript und Cookies zulassen, sobald ich das gemacht habe, sind Identitätsinformationen ausgetauscht worden. Durch das einschalten von Javascript, kann Computer Base nun meinen Web-Browser auslesen; es werden Informationen über meine Zeitzone und damit das Land in dem ich mich befinde ausgelesen, mein User-Agent wird abgefragt, dadurch weiß Computer Base welchen Web-Browser ich verwende, die Auflösung meines Bildschirmes und die Größe des Browserfensters wird übermittelt. Es werden noch viel mehr Informationen übermittelt, die alle zusammen einen Digitalen Fingerabdruck bilden und dieser wird als „Hash“ dargestellt.
Der digitale Fingerabdruck
Jeder Web-Browser hat zur Identifizierung den sogenannten „User Agent“. Der User Agent enthält die jeweilige Versionsnummer des Web-Browsers, die Version der Browser-Engine, welches Betriebssystem in welcher Version installiert ist und so weiter. Drei „User Agent“ zum ansehen:
Falkon-Browser:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/548.29 (KHTML, like Gecko) Falkon/2.0.3 Chrome/65.2.5368.457 Safari/47.458
FireFox-Browser:
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:84.0) Gecko/20100201 Firefox/85.0
Chromiuim-Browser
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/45.568 (KHTML, like Gecko) Chrome/81.2.45 Safari/537.36
Hersteller | Betriebssystem | Engen | Browser | Gerät |
Netscape | Linux | Apple | Chrome | PC |
Mozilla | x86 | WebKit | 81.2.45 | --- |
Google inc. | 64-Bit | --- | --- | --- |
So eine Verkettung von Informationen nennt man einen „String“ (Strang). Daraus lässt sich so einiges aus lesen und diese Informationen lassen sich kombinieren; z.B steht „X11“ für X-org und das ist der Lokale-Server auf dem die Grasfische Oberfläche vieler Linux Betriebssysteme läuft und damit ist klar, das es sich um einen Desktop Computer handelt.
Der Hash
Jeder Information wird ein Numerischer Wert zugewiesen.
Ein Beispiel mit Schriftarten; Der Web-Browser benötigt Zugang zu den auf dem Computer im Betriebssystem installierten Schriftarten, um die Webseiten anzuzeigen. Dabei wurden alle auf dem Computer gefunden Schriftarten, mit jeweils einem Zahlenwert versehen und dieser wird addiert. Im folgendem sehen wir die einzelnen Schriftarten als Zahlenwerte, jede Schriftart hat ihre eigene Zahl/Wert/Code:
4905,175 sans-serif
4530,144 Arial
5108,150 DejaVu Sans
4289,301 Lohit Telugu
4546,205 Loma
Werden die Zahlen zusammen addiert, entsteht ein Hash, den man auch als Fingerabdruck bezeichnet. Hier ein Beispiel eines Schriftarten Fingerabdruckes:
Font Fingerprint: B09A623585A584765DA6121F8FC12A88
Der Hash wird in Hexadezimal ausgegeben; dieser geht von 0 bis F, insgesamt 16 Zahlen „0123456789ABCDEF“.
Je nachdem, welche und wie viele Schriftarten auf dem System installiert sind, ändert sich beim zusammenzählen der einzelnen Werte, der Hash bzw. Fingerabdruck.
Einige Programme bringen ihre eigenen Schriftarten mit und werden bei der Installation des Programms, mit in das Betriebssystem installiert. Auch Webseiten installieren Schriftarten in das System und so kommt es dazu, dass es kaum zwei Computer auf der Welt gibt, die exakt die gleiche Anzahl und Art der Schriftarten installiert haben; wodurch sich die einzelnen Computer in ihrem Fingerabdruck unterschieden.
Kombiniert man den Schriftarten-Hash und den User-Agent-Hash, in dem man sie zusammen addiert, bekommt man einen Unikaten Hash/Fingerabdruck.
Schriftart-Hash + User-Agent-Hash = Unikat
8AB34678AF + 104F6A5B8C = 9B02B0D43B
Es werden aber noch andere Fingerabdrücke gemacht, wie der OpenGL- Canvas- WebRTC- Audio- Fingerprint und noch einige andere. Addiert man nun all diese Hashes zusammen, ist es unmöglich das es zwei Computer mit den gleichen Hash auf der Welt gibt. Die Hardware, also die einzelnen Komponenten aus denen der Computer zusammengesetzt ist, wie Prozessor, Arbeitsspeicher, Grafikkarte usw., spielen ebenso eine rolle beim erstellen des Fingerabdruckes und werden auch in den Hash einbezogen.
Tracking
Dieser Fingerabdruck kann nun in einem Datenzentrum gespeichert werden, was auch in den meisten Fällen gemacht wird.
Damit Webseiten bereit währen ihre gesammelten Kundeninformationen zu teile, gibt es Firmen die diese Daten aufkaufen. Die Daten werden weite an Datenzentren verkauft, dort verarbeitet; in dem sie den Fingerabdruck vergleichen und alle gesammelten Daten zu einem bestimmten Fingerabdruck, in einem Ordner legen. Die Daten in diesem Ordner werden weiter analysiert, es wird ein Profil erstellt und an Kunden weiter verkauft.
Zu den Kunden gehören nicht nur Firmen die ihre Produkte verkaufen wollen und hoffen in diesen Datenbanken Kunden zu finden. Es sind vor allem Geheimdienste, die alles über jeden wissen wollen. Die Geheimdienste bezahlen mit Steuergeldern für diese Informationen und somit sind wir es selbst, die diese Spionage an uns bezahlen.
An dieser Stelle, werden sicherlich einige Leute meine Seriosität der Behauptung, gegenüber der „Geheimdienste“ anzweifeln wollen; die Quelle dieses Wissens ist: Edward Snowden
Cookies
Der Cookie ist ein nützliches Script, das es uns ermöglicht, beispielsweise auf Internetseiten angemeldet zu bleiben oder bestimmte Einstellungen, die wir selbst an der Webseite vorgenommen haben, für den Zeitraum bis der Cookie gelöscht wird, zu speichern. Cookies können ein Ablaufdatum haben und sind nur in diesem Zeitraum gültig; sie werden aber nicht nach Ablauf automatisch gelöscht.
Auf dem Screenshot sehen wir meine DuckDuckGo Einstellungen. Diese Einstellungen weichen von den Standarteinstellungen ab und werden in einem Cookie, auf meinem Computer gespeichert. Die im Cookie enthaltenen Informationen, können wir in den Cookie-Einstellungen bei manchen Web-Browsern einsehen.
Auf diesem Screenshot, sehen wir dass zwei Cookies abgelegt bzw. gespeichert wurden. Beide Cookies sind von DuckDuckGo, nur von zwei verschiedenen Domains (Internetadressen). Die eine Domain ist https://duckduckgo.com und die andere ist https://3g2upl4pq6kufc4m.onion. Beide Domains gehören zu DuckDuckGo, mit dem unterschied, das die zweite Domain, durch das „Onion“ verfahren verschlüsselt ist, was man auch an der Top-Level-Domain „.onion“ erkennen kann.
(Um auf Onion verschlüsselte Webseiten gelangen zu können, muss das „The onion router (Tor)“ Netzwerk benutzt werden. Dazu werde ich einen eigenen Artikel schreiben und hier Verlinken.)
Durch das anklicken des Cookies, öffnet der Browser den Cookie und man sieht den Code. Der Code besteht aus Zeichen, in diesem Fall aus jeweils zwei Buchstaben; ausgenommen der zweite Eintrag, der den Code „1“ hat.
Sehen wir uns nun den „ae“ Code näher an. Beim Klicken auf den „ea“ Code öffnet sich ein Menü nach unten und ich sehe die Informationen des Codes. An erster stell der Name, die Domain, Erstellungsdatum, Ablaufdatum und einiges mehr.
Dieser Code wird beim aufrufen der Internetseite ausgelesen und ausgeführt. Der Code „ae“ ist der Code für das „dunkle Thema“ der Seite. Wenn ich nun nur den Code „ae“ aus dem Cookie entferne und die Seite DuckDuckGo neu lade, wird mir die Seite im Standard Thema weiß angezeigt. Jeder Code steht für eine Einstellung die ich auf DuckDuckGo vorgenommen habe und beim löschen des Codes einer bestimmten Einstellung, wird diese auf Standard zurückgesetzt.
Cookie missbrauch
Beim zugriff auf eine Internetseite, kann diese alle auf dem Computer gespeicherten Cookies auslesen und somit die besuchten Webseiten eines Benutzers sehe; weshalb man Cookies immer löschen sollte. Das Löschen der Cookies stell jedoch ein kleines Problem dar, da man sich in seine Onlinekonten bei jedem zugriff neu anmelden muss.
Auch die Anzahl und Art der Cookies, stellt einen Fingerabdruck dar; es wird wohl kaum zwei Computer geben, die exakt gleiche Cookies, mit gleichen Einstellungen und Erstellungs- bzw. Ablauf-Datum haben.
Cookies können auch über das Internet auf eine anderen Computer kopiert werden und jemand anderes wird mit diesem Cookie, automatisch in dein z.B Google Konto angemeldet. Hat vor langer Zeit funktioniert, heutzutage reicht ein Cookie für die Anmeldung nicht mehr aus. Jedoch gibt es immer noch Webseiten bei denen es funktioniert.
JavaScript
Scripte sind kleine Programme die jedoch nicht von selbst lauffähig sind und nur in einem anderen Programm, das JavaScript unterstützt installiert werden; wie z.B. in einem Browser. Es sind Funktionen mit denen wir bestimmte Sache machen können. Scripte sind in fast allen Internetseiten verbaut.
Die für das World Wide Web entwickelt Sprache ist eigentlich „Hypertext Markup Language (HTML)“. Mit HTML lässt sich jedoch vieles nicht verwirklichen und deshalb wird eine höhere Sprache benötigt, die all das was HTML nicht kann, übernimmt. Webdesigner bauen oft JavaScript in ihre Webseiten ein, obwohl es nicht nötig wäre. Einiges was eine Internetseite machen soll, kann mit HTML, PHP usw. realisiert werden; wenn man will. Aber mit HTML lässt sich nicht spionieren, mit JavaScript dagegen schon. Was der Hauptgrund dafür ist, dass die meisten Webseiten JavaScript benutzen. Einige habe Scripte auf Ihren Webseiten, weil das alle so machen und sie gar nicht wissen, dass sich diese Funktion auch anders realisieren lässt.
In Webseiten lässt sich so ziemlich jeder denkbare Befehl einbauen, der dann über den Web-Browser auf dem Computer ausgeführt werden kann; der Computer kann komplett ferngesteuert werden. Um solche Szenarien zu verhindern, haben die Web-Browser Schutzmechanismen, die das ausführen bestimmter Befehle verweigern. Weil es immer neue Ideen gibt, wie man eine Browser austricksen kann, müssen die Browser auf dem neusten stand gehalten werde. Es kommen aber auch immer neue Funktion bei den Browsern hinzu, die wiederum neue Schwachstellen bieten. Manche dieser neuen Funktionen sind echter Schwachsinn und verschwinden nach einiger Zeit wieder, so wie die „Google Cloud Print“ Geschichte.
Man kann aber auch die Javascript Unterstützung im Browser abschalten und der Browser ist sicher. Das hat aber Nachteile; die meisten Webseiten enthalten JavaScript und funktioniert nur eingeschenkt oder gar nicht.
JavaScript Filtering
Es gibt viele Möglichkeiten JavaScript Funktionen zu unterbinden und da wird es echt kompliziert. Einerseits brauchen wir manche Scripte damit wir eine bestimmte Funktion ausführen können, anderseits können in dieses Script zusätzliche Funktionen eingebaut werden und wenn man dieses Script zulässt, man auch die unerwünschte Funktion mit-zulässt.
Es gibt Browser-Erweiterungen „Extesions“, mit denen man Javascript und andere Funktionen filtern kann, so dass nur das ausgeführt wird, was man haben will.
Diese Thema werden wir zu einem anderen Artikel behandeln.
APIs
Das „Application Programming Interface (API)“ stelle man sich wie einen Boten vor, man gibt dem Boten eine Auftrag und der Bote führt ihn aus. Leider können diese Boten zu Spionen umprogrammiert werden, sie erledigen zwar den Auftrag den man ihnen erteilt hat, sie könne aber auch umgekehrt von der Webseite einen Auftrag bekommen und beide erledigen. Deswegen so viele APIs wie möglich abschalten; das Internet hat auch bevor die APIs erfunden wurden funktioniert.
Selten eine Webseite nutzt APIs und bei Webseiten die APIs benutzen, kann man sich zu 90% sicher sein, dass sie einen ausspionieren wollen.
Der Browser als Spyware
Da sich die Benutzer immer besser gegen die Spionage schützen, werden die Web-Browser selbst zu Spionagewegzeug und übermitteln die Daten an den jeweiligen Hersteller des Web-Browsers oder auch direkt an den Auftraggeber. Das bekannteste Beispiel ist der Google-Chrome. Der Google-Chrom speichert alles was der Benutzer mit dem Browser macht und kopiert es auf einen Google-Servern. Google bereitet diese Daten auf und verkauft sie weiter. In den Google AGBs ist das sogar nachzulesen und Google macht da auch kein Geheimnis daraus. Google geht sogar soweit, dass der Nutzer nicht einmal das Recht hat, die über ihn gesammelten Daten einzusehen oder zu erfahren was Google mit diesen Daten macht. Die Daten werden auch nicht von den Servern gelöscht, sondern Archiviert, so das die nachfolgenden Generationen mit unseren Erbe belastet werden können.
Im Vergleich zu Google, wahren die StaSi und GeStaPo, ein Witz.
Smartphones
Die meisten Apps sind nichts weiter als ein Web-Browser, der nur eine bestimmte Web-Seite anzeigen kann; weswegen man auf diese Apps verzichten kann, da sie den Nutzer ausspionieren können und die meisten machen das auch. Die Facebook App übermittelt Positionsdaten, Telefonbucheinträge und vieles mehr an Facebook. Wies also diese App installieren, wenn man Facebook auch in einem Web-Browser öffnen kann?
Woran erkenne ich eine guten Web-Browser?
Ein guter Web-Browser bietet viele Einstellungs- und Erweiterungs-Möglichkeiten. Gewöhnlich verbinden sich die meisten Web-Browser beim starten, mit verschiedenen Internetseiten (Domains). Sie rufen verschieden Dienste auf, die man in den meisten Fällen nicht ein mal kennt. Der wohl bekannteste Dienst ist Google, womit sich auch fast alle Web-Browser beim Start automatisch verbinden. Sobald sich der Web-Browser mit Google verbunden hat, kennt Google deine IP-Adresse.
Der beste Browser ist derjenige, der nur dann Verbindungen macht, wenn es gewollt ist und da gibt es nur sehr wenige.
Weiter geht es in diesen Artikel: Konfiguration der Web-Browser-Firewall
Zuletzt bearbeitet: