Was meinst du mit "System"? Die Verschlüsselung sollte in einigen Bibliotheken erfolgen. Dies kann in gewisser Weise als Teil des Systems und in anderer Hinsicht als Teil des Browsers angesehen werden. (Auch der Browser selbst ist Teil des Systems, da er für alle Benutzer installiert ist, die die ausführbare Datei gemeinsam nutzen.)
Die Sicherheitsgranularität besteht darin, dass sich der gesamte Browser und seine Komponenten im selben Sicherheitskontext befinden (zB Betriebssystemprozess mit eigenem Adressraum). Die Krypto findet in diesem Prozess statt.
Um die Klartextdaten abzufangen, müsste die Software einen Weg finden, um den Sicherheitskontext des Browsers zu verletzen. Dies ist normalerweise in Betriebssystemen möglich, die nur grobkörnige Sicherheitsrichtlinien für Code haben, der irgendwie Superuser-Berechtigungen erworben hat.
ZB. In Unix-ähnlichen Betriebssystemen können wir den Systemaufruf ptrace
verwenden, um eine Verbindung zu einem Prozess herzustellen, und verschiedene Dinge ausführen, z. B. die Ausführung anhalten und fortsetzen, Systemaufrufe überwachen oder seinen Speicher untersuchen / ändern.
In den Browser eingehende Daten, wie z. B. Tastenanschläge, die Sie in Formulare eingeben, stammen aus einem anderen Sicherheitskontext, nämlich demjenigen, der den Tastaturtreiber im Betriebssystemkern enthält. Dies kann auch von privilegierten Programmen angegriffen werden, die Zugriff auf Daten erhalten, die über Treiber übertragen werden.
Auf dem wird jedoch ein HTTP / HTTPS-Proxy (im Gegensatz zu einem böswilligen Superuser-Programm, das in Prozesse hineinschaut) ausgeführt Dieselbe Maschine hätte keinen Zugriff auf Klartextverkehr. Was durch einen Proxy geht, ist das verschlüsselte HTTPS-Protokoll.