MIT-Kurs "Sicherheit von Computersystemen". Vortrag 18: "Privates Surfen im Internet", Teil 3

Published on November 20, 2018

MIT-Kurs "Sicherheit von Computersystemen". Vortrag 18: "Privates Surfen im Internet", Teil 3

Ursprünglicher Autor: Nikolai Zeldovich, James Mykens
  • Übersetzung
  • Tutorial

Massachusetts Institute of Technology. Vorlesung # 6.858. "Sicherheit von Computersystemen." Nikolai Zeldovich, James Mykens. 2014


Computer Systems Security ist ein Kurs zur Entwicklung und Implementierung sicherer Computersysteme. Die Vorträge behandeln Bedrohungsmodelle, Angriffe, die die Sicherheit gefährden, und Sicherheitsmethoden, die auf der neuesten wissenschaftlichen Arbeit basieren. Zu den Themen gehören Sicherheit des Betriebssystems (Betriebssystem), Funktionen, Informationsflusssteuerung, Sprachsicherheit, Netzwerkprotokolle, Hardwareschutz und Sicherheit in Webanwendungen.

Vorlesung 1: "Einführung: Bedrohungsmodelle" Teil 1 / Teil 2 / Teil 3
Vorlesung 2: "Kontrolle von Hackerangriffen" Teil 1 / Teil 2 / Teil 3
Vorlesung 3: "Pufferüberlauf: Exploits und Schutz" Teil 1 /Teil 2 / Teil 3
Vorlesung 4: "Privilegienseparation" Teil 1 / Teil 2 / Teil 3
Vorlesung 5: "Woher kommen die Fehler des Sicherheitssystems" Teil 1 / Teil 2
Vorlesung 6: "Fähigkeiten" Teil 1 / Teil 2 / Teil 3
Vorlesung 7: "Native Client Sandbox" Teil 1 / Teil 2 / Teil 3
Vorlesung 8: "Netzwerksicherheitsmodell" Teil 1 / Teil 2 / Teil 3
Vorlesung 9: "Web Application Security" Teil 1 / Teil 2/ Teil 3
Vorlesung 10: "Symbolische Ausführung" Teil 1 / Teil 2 / Teil 3
Vorlesung 11: "Ur / Web-Programmiersprache" Teil 1 / Teil 2 / Teil 3
Vorlesung 12: "Netzwerksicherheit" Teil 1 / Teil 2 / Teil 3
Vorlesung 13: "Netzwerkprotokolle" Teil 1 / Teil 2 / Teil 3
Vorlesung 14: "SSL und HTTPS" Teil 1 / Teil 2 / Teil 3
Vorlesung 15: "Medizinische Software" Teil 1 / Teil 2/ Teil 3
Vorlesung 16: "Angriffe durch einen Seitenkanal" Teil 1 / Teil 2 / Teil 3
Vorlesung 17: "Benutzerauthentifizierung" Teil 1 / Teil 2 / Teil 3
Vorlesung 18: "Private Internet Viewing" Teil 1 / Teil 2 / Teil 3

Der erste Ansatz besteht also darin, virtuelle Maschinen zu verwenden, um die Garantie für privates Surfen zu verbessern, dh wir werden den Datenschutz auf der Ebene der virtuellen Maschinen berücksichtigen.

Die Grundidee ist, dass jede private Sitzung in einer separaten virtuellen Maschine ausgeführt werden sollte. Wenn der Benutzer eine private Browsersitzung beendet, wird die virtuelle Maschine gelöscht. Was ist der Vorteil dieser Idee?



Dies ist wahrscheinlich darauf zurückzuführen, dass Sie eine stärkere Vertraulichkeitsgarantie haben, die Sie dem Benutzer bieten können, da die virtuelle Maschine vermutlich über eine relativ saubere Datenein- / ausgabeschnittstelle verfügt. Wir können davon ausgehen, dass Sie diese virtuellen Maschinen zu einer Art sicherer Lösung für einen Swap kombinieren, z. B. Open BSD zusammen mit der Verschlüsselung von Daten auf der Festplatte.

Daher haben wir hier eine sehr klare Trennung der VM und alle E / A-Vorgänge, die unten ausgeführt werden. Dies gibt Ihnen eine stärkere Garantie als die, die Sie von einem Browser erhalten, der nicht von Grund auf so konzipiert wurde, dass er alle Möglichkeiten der Eingabe / Ausgabe von Informationen sorgfältig beachtet und welche Geheimnisse dabei entstehen können, wenn diese Informationen im Datenspeicher gespeichert sind. .

Ja, es gibt stärkere Garantien. Außerdem erfordert es keine Änderungen in Ihren Anwendungen, dh im Browser. Sie nehmen einen Browser und legen ihn in eine dieser virtuellen Maschinen - und alles wird ohne Änderungen in der Anwendung auf magische Weise verbessert.

Was ist daran falsch - ich ziehe ein trauriges Smiley an die Tafel - es ist umständlich. Unter Schwerfälligkeit meine ich, dass Sie, wenn Sie eine der privaten Browsersitzungen starten möchten, die gesamte virtuelle Maschine starten müssen. Und es kann ziemlich schmerzhaft sein, weil Benutzer verärgert sein werden, weil sie lange Zeit brauchen werden, um ihre privaten Browsersitzungen zu starten.



Andere Probleme sind, dass diese Lösung nicht praktikabel ist. Und der Grund für die Unpraktikabilität liegt nicht darin, dass es für Benutzer wirklich schwierig ist, Dateien, die sie im privaten Browsermodus gespeichert haben, auf einen Computer zu übertragen, alle Lesezeichen, die sie in diesem Modus generiert haben, zu übertragen gemacht von Hier gibt es jedoch viele Unannehmlichkeiten, die mit Faulheit verbunden sind.

Der zweite Ansatz für das Problem ist dem ersten ähnlich, wir implementieren ihn jedoch im Betriebssystem selbst und nicht in der virtuellen Maschine. Die Grundidee ist hier, dass jeder Prozess potenziell in einer privaten Domäne gestartet werden kann. Eine private Domäne ist eine Art Sammlung von gemeinsam genutzten Ressourcen des Betriebssystems, die der Prozess verwendet, und das Betriebssystem verfolgt all diese Dinge. Sobald der Prozess beendet ist, prüft das Betriebssystem alles, was sich im privaten Bereich befindet, und gibt alle diese Ressourcen vollständig für die neue Verwendung frei.

Der Vorteil dieses Ansatzes im Vergleich zur Verwendung von VM ist geringeres Gewicht, da eine virtuelle Maschine, wenn Sie darüber nachdenken, im Wesentlichen agnostisch gegenüber dem Status des Betriebssystems und dem Status aller Anwendungen ist, die gestartet werden. Die Verwendung einer virtuellen Maschine verursacht also mehr Arbeit als ein Betriebssystem, da das Betriebssystem vermutlich alle Punkte kennt, an denen ein privater Browser mit Dateneingabe / Datenausgabe in Kontakt kommt, mit dem Netzwerk "spricht" und dergleichen. Vielleicht weiß das Betriebssystem sogar, wie man den DNS-Cache selektiv löscht.

Sie können sich also vorstellen, dass es viel einfacher ist, diese Datenschutzdomänen zu "entfesseln", sodass Sie sie einfach "herunterziehen" können. Der Nachteil dieser Lösung, zumindest in Bezug auf die Ausführung der VM, ist jedoch, dass sie viel schwieriger auf die richtige Weise ausgeführt werden kann. Ich habe den Ansatz mit VM daher als progressiv beschrieben, da die virtuelle Maschine im Wesentlichen agnostisch für alles ist, was im Betriebssystemcontainer funktioniert.



Das Schöne daran ist, dass Sie mit dem VM-Ansatz nur wenige Low-Level-Schnittstellen verwenden können. Beispielsweise verursacht die von der virtuellen Maschine zum Schreiben auf die Festplatte verwendete Schnittstelle ein höheres Maß an Vertrauen, da sie alles enthält, was benötigt wird. Während der Verwendung des Betriebssystems ist dies viel komplizierter, da Sie davon ausgehen, dass es einzelne Dateien mit einer Systemschnittstelle verwendet, beispielsweise mit einer individuellen Netzwerkschnittstelle. Wenn Sie all dies auf Betriebssystemebene tun, ist die Gefahr eines Datenverlusts viel größer.

Dies waren also die beiden Hauptansätze zur Verbesserung der Vertraulichkeitsgarantie beim Einsatz des privaten Browsermodus, der jetzt implementiert werden kann.
Sie fragen sich vielleicht: Können wir trotzdem die Identität des Benutzers offenlegen, wenn er eine dieser leistungsfähigeren Sicherheitslösungen einsetzt - das Surfen im Internet mit einer virtuellen Maschine oder Datenschutzdomänen im Betriebssystem? Können wir den Benutzer der Anonymität berauben? Die Antwort auf diese Frage lautet: Ja, wir können!

Die Demanonymisierung von Benutzern ist möglich, weil die virtuelle Maschine aus irgendeinem Grund eindeutig ist. Dies ist vergleichbar mit der Möglichkeit, den Browser mithilfe der Panopticlick-Site mit einem Fingerabdruck zu versehen. Wahrscheinlich gibt es etwas Einzigartiges in der Konfiguration der virtuellen Maschine, wodurch Sie ihre Fingerabdrücke nehmen können. Es ist auch möglich, dass der VM-Monitor oder das Betriebssystem selbst in gewisser Weise eindeutig ist. Dadurch kann der Angreifer im Netzwerk die Identität des Benutzers erkennen.

Ein typisches Beispiel ist das TCP-Fingerprinting. Die Idee ist, dass die TCP-Protokollspezifikation tatsächlich die Einstellung einiger Protokollparameter bei der Implementierung dieses Protokolls ermöglicht. Beispielsweise ermöglicht TCP den Executoren die Auswahl der Anfangsgröße von Paketen, die im ersten Teil des Verbindungsaufbaus gesendet werden, wodurch der Executor beispielsweise die anfängliche Lebensdauer dieser Pakete auswählen kann.



Auf diese Weise können Sie Standardwerkzeuge wie InMap erhalten, die mit hoher Wahrscheinlichkeit erkennen, welches Betriebssystem Sie verwenden, indem Sie einfach sorgfältig bearbeitete Pakete senden. Sie werden beispielsweise die Tatsache sehen, dass TTL hier dargestellt wird, und hier - die Größe des Distributionspakets, und hier war die Seriennummer des TTP. So erstellen sie eine Datenbank mit Fingerabdrücken. Sie sagen: "Wenn das zurückgegebene Paket dieses, dieses und dieses Merkmal hat, dann arbeiten Sie gemäß der Tabelle mit Solaris, verwenden einen Mac und Sie sind Windows" oder etwas anderes. Selbst wenn Sie einen dieser Ansätze verwenden, um die Privatsphäre beim privaten Surfen mit einer virtuellen Maschine oder einem

Es ist interessant zu wissen, dass der Benutzer, selbst wenn der Benutzer durch eine dieser leistungsfähigeren Methoden geschützt ist, immer noch zwischen öffentlichen und privaten Anzeigemodi aufgeteilt ist und den Computer dennoch physisch verwendet. Dies ist interessant, weil Sie dazu beitragen können, dass Ihre persönlichen Informationen während des Umgangs mit einem Computer verloren gehen.

Wie sich herausstellt, hat jeder Benutzer beispielsweise eine eindeutige Tastendruckgeschwindigkeit. Wenn ich Ihnen also die Aufgabe gebe, mit dem Ausdruck "schneller brauner Fuchs" oder einem solchen Unsinn gleichzeitig zu beginnen, wird die Beobachtung zeigen, dass der Zeitpunkt des Tastenanschlags für jeden von Ihnen so einzigartig ist, dass er möglicherweise für den Fingerabdruck verwendet werden kann.

Es ist auch interessant, dass Benutzer über einzigartige Schreibstile verfügen. Es gibt eine Sicherheitsbranche namens Styling.



Die Idee hinter der Stilografie ist, dass ein Angreifer anhand der Muster Ihres Briefs herausfinden kann, wer Sie sind. Stellen Sie sich vor, Sie hängen aus irgendeinem Grund bei 4chan herum und ich möchte herausfinden, ob Sie wirklich da draußen waren. Ich kann eine Reihe verschiedener Nachrichten auf 4chan betrachten und sie zu Kommentarsätzen zusammenfassen, die stilistisch gleich aussehen. Dann werde ich versuchen, öffentliche Muster Ihres Schreibstils zu finden, zum Beispiel in Hausaufgaben, die Sie geschrieben haben. Danach passe ich die Stilbeispiele in den 4chan-Kommentarsätzen an Ihre Hausaufgaben an. Wenn ich eine Übereinstimmung finde, kann ich Ihren Eltern schreiben, um Ihnen den Schaden an den 4chan-Foren zu erklären. Aus diesem Grund habe ich mich entschlossen, Ihre Aufmerksamkeit auf die Stilografie zu lenken. Das ist eigentlich ziemlich interessant.

Daher haben wir diskutiert, wie VMs oder geänderte Betriebssysteme für die Unterstützung des privaten Browsens verwendet werden können. Daher wundern Sie sich vielleicht, warum die Browser eine der folgenden Aktionen nicht erfordern: Starten Sie eine virtuelle Maschine oder ändern Sie das Betriebssystem. Warum übernehmen Browser die Implementierung all dessen?

Der Hauptgrund ist die Einsetzbarkeit. Browser-Hersteller möchten ihre Benutzer in der Regel nicht dazu zwingen, den Browser zusätzlich zu installieren und den Browser selbst zu installieren. Es ist wie die Motivation des nativen Clients, wenn Google diese coolen Funktionen auf Endbenutzercomputern hinzufügt, die Benutzer jedoch nicht dazu gezwungen werden, eine spezielle Version von Windows oder Linux oder etwas anderes zu installieren. So sagt Google, dass "wir uns selbst darum kümmern werden."

Ein weiterer Grund ist die Benutzerfreundlichkeit. Viele dieser privaten Browsing-Lösungen auf der Ebene der virtuellen Maschinen und des Betriebssystems machen es Benutzern, wie bereits erwähnt, schwer, die während einer privaten Browsersitzung erhaltenen Daten zu speichern - heruntergeladene Dateien, Lesezeichen und dergleichen.



Grundsätzlich sagen Browser-Hersteller, wenn sie selbst private Browsing-Modi implementieren, können sie Benutzern ermöglichen, im privaten Browsermodus heruntergeladene Dateien zu empfangen und auf einem Computer zu speichern. Zuerst hört es sich gut an. Beachten Sie jedoch, dass dieser Ansatz Benutzern das Exportieren einer bestimmten Art von privatem Status ermöglicht, was viele Sicherheitslücken eröffnet und die Analyse der Sicherheitseigenschaften für die Implementierung des privaten Browsermodus sehr schwierig macht.
Daher versuchen die Autoren des Artikels, verschiedene Arten von Browserzuständen zu charakterisieren, die geändert werden können, und zu überlegen, wie die aktuellen privaten Anzeigemodi diese ändern können.

Der Artikel klassifiziert Browserstatusänderungen. Bei dieser Klassifizierung gibt es vier Arten von Änderungen. Der erste Typ ist, wenn Statusänderungen von der Site selbst ohne Benutzereingriff initiiert werden. Beispiele für diese Art von Statusänderung sind das Abrufen von Cookies, das Hinzufügen des Adressverlaufs des Browsers und das Aktualisieren des Cache des Browsers. In der Hauptsache bleibt dieser Zustand während der gesamten privaten Betrachtung erhalten, wird aber nach seiner Fertigstellung zerstört.

Es kann davon ausgegangen werden, dass, da der Benutzer während der Bildung dieses Zustands nicht mit dem Browser interagiert, angenommen wird, dass der Benutzer selbst nicht daran teilnehmen möchte.

Die zweite Art der Änderung des Browserzustands wird ebenfalls von der Website initiiert. Es gibt jedoch eine Interaktion mit dem Benutzer, der diese Website besucht hat. Beispielsweise installiert ein Benutzer ein Clientzertifikat oder verwendet ein Kennwort für die Autorisierung der Site, d. Gleichzeitig sagt der Browser sehr hilfreich: "Möchten Sie dieses Passwort speichern?". Wenn der Benutzer mit Ja antwortet, können beispielsweise gespeicherte Kennwörter außerhalb des privaten Ansichtsmodus verwendet werden. Daher ist grundsätzlich nicht klar, wie die Datenschutzerklärung in diesem Fall aussehen soll. In der Praxis stellt sich heraus, dass Browser das Vorhandensein von Dingen zulassen, die im privaten Browsing-Modus über ihre Grenzen hinaus entstanden sind, vorausgesetzt, dass der Benutzer selbst die beste Option für ihn wählt und "Ja" oder "Nein" sagt. Wenn der Benutzer klug genug ist dann wird er das Passwort für eine zweifelhafte Site nicht speichern, da jemand anderes es später verwenden kann. Daher kann es zu einem Benutzerfehler kommen, nicht zu einem Browser, der zum Verlust der Privatsphäre führen kann.

Es ist daher unklar, welche Politik die beste ist, aber in der Praxis darf diese Art von Statusänderung außerhalb des privaten Betrachtungsmodus bleiben.

Die dritte Art der Zustandsänderung wird vollständig vom Benutzer initiiert. Dazu gehören das Speichern von Lesezeichen oder das Herunterladen von Dateien. Dieser Zustand ähnelt dem vorherigen, da der Benutzer direkt an seiner Erstellung beteiligt ist. In diesem Fall stimmt der private Ansichtsmodus zu, dass Statusänderungen dieses Typs für die weitere Verwendung außerhalb der privaten Ansicht gespeichert werden.



Außerdem gibt es einige Arten von Zuständen, die überhaupt keiner bestimmten Sitzung zugeordnet sind. Dies ist zum Beispiel der Aktualisierungsstatus des Browsers selbst, dh das Ändern der Datei, die den Browser darstellt. Browserentwickler glauben, dass diese Statusänderung Teil eines globalen Status ist, der sowohl für die öffentliche als auch für die private Anzeige verfügbar ist.

Wenn Sie es sorgfältig betrachten, werden Sie feststellen, dass es einige Bedingungen gibt, die dazu führen können, dass Daten über die Grenzen des privaten Ansichtsmodus hinausgehen, insbesondere wenn Benutzerinteraktionen stattfinden. Ich frage mich, ob dies der beste Kompromiss zwischen Sicherheit und Datenschutz ist.



Der Artikel besagt, dass es schwierig ist, die Möglichkeit zu verhindern, dass ein lokaler Angreifer feststellen kann, ob Sie privat surfen oder nicht. Dieser Artikel sagt etwas vage. Tatsache ist, dass die Art und Weise, wie Informationslecks entstehen, davon abhängt, in welcher Ansichtsart - privat oder öffentlich - sie auftreten. Wenn Sie beispielsweise in Firefox und Chrome ein Lesezeichen im privaten Browsermodus erstellen, sind dieser Registerkarte eine Reihe von Metadaten zugeordnet, z. B. Zeit für den Besuch einer Website und dergleichen. In vielen Fällen sind diese Metadaten gleich null oder nahe einem Nullwert, wenn diese Registerkarte im privaten Anzeigemodus erstellt wurde. Wer später Ihren Computer steuert, kann Ihre Lesezeicheninformationen sehen. Wenn er feststellt, dass diese Metadaten Null sind, wird er abschließen

Wenn wir über Browsersicherheit sprechen, denken wir darüber nach, was genau mit JavaScript, HTML oder CSS gemacht wird. Was können sie mit Plugins oder Erweiterungen? Plug-Ins und Erweiterungen sind im Zusammenhang mit dem privaten Surfen durchaus interessant, da sie in den meisten Fällen nicht auf die gleiche Ursprungsrichtlinie beschränkt sind. Sie können beispielsweise die Verwendung von JavaScript einschränken. Interessanterweise arbeiten diese Erweiterungen und Plugins normalerweise mit sehr hohen Privilegien. Sie können sich grob gesagt als Kernel-Module vorstellen. Sie verfügen über eine hohe Autorität, so dass neue Funktionen direkt in den Browsern selbst implementiert werden können. Daher ist dies ein wenig problematisch, da diese Plugins und Erweiterungen häufig von jemandem entwickelt werden, der nicht der eigentliche Entwickler des Browsers ist. Das heisst, dass jemand versucht, etwas Gutes zu tun und Ihrem Browser nützliche Eigenschaften zu verleihen, indem Sie ihm ein Plugin oder eine Erweiterung hinzufügen. Dieser Drittentwickler kann jedoch den Sicherheitskontext, in dem seine Erweiterung ausgeführt wird, möglicherweise nicht vollständig verstehen. Daher kann eine solche Erweiterung die Semantik des privaten Anzeigemodus nicht oder falsch darstellen.

Nach ein paar Minuten erkläre ich Ihnen, was aus Sicherheitsgründen wirklich schlecht ist. Wenn Sie einige dieser neuen Plug-Ins oder Erweiterungen hinzufügen, können Sie die daraus resultierende Vertraulichkeit nicht richtig einschätzen. Die gute Nachricht ist, dass Plugins bald dem Pfad der Dinosaurier folgen können, dh aussterben können. Sie wissen wahrscheinlich, dass HTML5 all diese neuen Funktionen hinzufügt, z. B. Audio-Tags, Video-Tags und dergleichen. Viele dieser neuen Funktionen wurden entwickelt, um die Verwendung von Plug-Ins wie Java oder Flash zu beenden. Denn wenn Menschen 2D- oder 3D-Grafiken auf Websites verwenden wollten, mussten sie in der Vergangenheit so etwas wie Java oder Flash verwenden. Jetzt können sie Dinge wie web gl oder informative Tags verwenden, so dass es wahrscheinlich an der Zeit ist, dass die Plugins gehen.

Beispielsweise hat das IE-Entwicklungsteam erklärt, dass es nicht der Meinung ist, dass jemand Plugins überhaupt verwenden wird, da es zum Beispiel HTML5 gibt. Wenn Sie zu YouTube gehen, weiß ich nicht, ob Sie es bemerkt haben, aber der HTML5-Player wird beim Ansehen von Videoclips verwendet. Sie weigern sich, das Video basierend auf ihrem Standard-Plug-In abzuspielen. Es ist also sehr interessant. Sie können bereits Websites sehen, die versuchen, ohne Plug-Ins in diese neue Welt zu wechseln. Erweiterungen werden jedoch wahrscheinlich auf absehbare Zeit verwendet. Daher ist es wichtig, bei der Entwicklung alles richtig zu machen.

Das letzte, was ich diskutieren wollte, ist, dass dieser Artikel vor vier Jahren (2010) geschrieben wurde. Sie können sich also fragen, was sich in dieser Zeit beim privaten Betrachten geändert hat.
Auf höchster Ebene ist es aus verschiedenen Gründen immer noch recht schwierig, einen privaten Browsermodus richtig zu organisieren. Zunächst einmal, weil Browser ständig weiterentwickelt werden, beispielsweise HTML5.

Die Grenzen der Schnittstelle, die in Bezug auf den privaten Browsing-Modus sicher sein sollten, erweitern sich ständig. Entwickler konzentrieren sich mehr auf das Hinzufügen neuer Funktionen als auf die Vertraulichkeit von Browsern. Daher ist es in der Praxis immer noch schwierig, einen privaten Browsermodus zu erstellen, der alle potenziellen Datenlecks verhindert.

Im Januar 2014 wurde beispielsweise ein Fehler in Firefox behoben, dessen Hauptidee die Verwendung der Erweiterung pdf.js war, mit der Sie PDF-Dateien mit einer sauberen HTML5-Schnittstelle anzeigen können. Wie sich herausstellte, erlaubte diese Erweiterung in einem privaten Browsermodus das Durchsickern von Cookies, die im öffentlichen Ansichtsmodus empfangen wurden.

Angenommen, Sie besuchen einige Websites in einem öffentlichen Modus und möchten einige PDF-Dateien herunterladen, was dazu führt, dass einige Cookies an Sie zurückgegeben werden. Dann wechseln Sie in den privaten Browsermodus und möchten eine weitere PDF-Datei von dieser Site anzeigen. Anschließend sendet pdf.js diese Cookies im öffentlichen Modus. In den Vorlesungsnotizen habe ich einen Link zur Diskussion dieses speziellen Fehlers. Seine Korrektur war ziemlich einfach, nachdem sie das Problem erkannt hatten. Sie fügten einfach hinzu, in welchem ​​Browsermodus sich der Browser befindet - falls die Cookies privat sind, sollten die Cookies nirgendwohin gesendet werden.

Also reparieren, es ist ziemlich einfach. Aber das Problem war, ich wiederhole noch einmal, dass die Leute diese coole, neue Erweiterung hinzugefügt haben, und es kam ihnen nicht in den Sinn, eine umfassende, umfassende Prüfung seiner Arbeit durchzuführen, um alle Bereiche des privaten Sehens herauszufinden, die dieses Plugin beeinflussen kann.

Es gibt einen weiteren interessanten Punkt, den wir vor einer halben Stunde besprochen haben: Was passiert, wenn Sie private und öffentliche Registerkarten haben, die Sie zur gleichen Zeit oder nach sehr kurzer Zeit öffnen.



Es gibt einen Fehler in Firefox, der seit 2011 nicht behoben wurde. Es besteht aus den folgenden. Wenn Sie den privaten Browsermodus aufrufen, führen Sie dort einige Aktionen aus, schließen Sie diese Registerkarte und öffnen Sie eine neue Registerkarte im öffentlichen Anzeigemodus. In diesem Abschnitt wird beschrieben: Speicher, von dem Sie wahrscheinlich wissen, dass der Browser gefälschte URLs und Informationen identifiziert darüber, wie sie arbeiten. Sie gehen also zum Tab "Privat", schließen ihn und gehen dann zu "about: memory". Dadurch werden Sie über alle in Firefox hervorgehobenen Objekte informiert. Es kommt normalerweise vor, dass Fensterobjekte freigegeben werden und während der Speicherbereinigung in die Firefox-Bin fallen. Am Ende stellt sich heraus, dass beim Öffnen einer neuen Registerkarte des öffentlichen Modus die Informationen darüber, was die Registerkarte des privaten Modus ausmachte, immer noch in etwa gespeichert werden: memory.

Zum Beispiel können Sie dort eine URL finden, die Ihnen anzeigt, wie viel Speicher all diesen Dingen zugewiesen ist, alles im Klartext. Dies ist ein Beispiel dafür, wie diese sehr empfindlichen Browser-Schnittstellen zum Informationsverlust beitragen können. Und so ist es sehr interessant.
Wenn Sie sich die Bugzilla-Diskussion ansehen, ist es sehr interessant zu wissen, wie diese Probleme im wirklichen Leben gelöst werden. Ich habe auf einen Link zu dieser Diskussion hingewiesen, und es wurde dort erwähnt, dass dieser Fehler an Priorität verlor, als klar wurde, dass die Beseitigung dieses Problems ein viel schwierigeres Problem war als ursprünglich beabsichtigt. Dies ist eine ziemlich lange Diskussion, wie das Problem behoben werden kann, einschließlich der Änderung der Art und Weise, wie die Garbage Collection aus dem Papierkorb des Browsers übernommen wurde. Es ist jedoch ziemlich schwierig in der Praxis zu implementieren, da die häufige Wiederholung dieses Vorgangs die Leistung beeinträchtigt. Daher sagten sie: „Es hat die Priorität des Problems verloren, als klar wurde, dass seine Lösung schwieriger als erwartet war.“ Daraufhin sagte der Entwickler: „Es ist traurig, das zu hören

Die Entwickler waren also wie beim Session Store - dies ist die Funktion des Speicherns in HTML5 - auf eine Menge Probleme gestoßen, die beim Löschen von Dingen von geschlossenen privaten Anzeigefenstern auftreten. Grundsätzlich besteht der Grund für diesen Fehler jedoch darin, Informationen über die Daten zu speichern, die sich noch im Speicher des Browsers befinden.
Kurz gesagt, es ist immer noch ziemlich schwierig, den korrekten Modus des privaten Betrachtens sicherzustellen. Es gibt Computer-Forensik-Tools, die Sie herunterladen können, um Belege für öffentliche und private Anzeigemodi zu finden. Wenn Sie also ein Hacker sind, verwenden Sie möglicherweise nicht einmal Ihre eigenen Werkzeuge.

Zum Beispiel gibt es ein Magnet-Tool, das nach Beweismaterial im Internet sucht, und Sie können es einfach verwenden. So können Sie beispielsweise die Auslagerungsdatei durchsuchen, um RAM-Artefakte zu finden, und Sie erhalten eine sehr gute grafische Benutzeroberfläche, in der die gefundenen Bilder, URLs und dergleichen aufgelistet werden. Daher lassen diese privaten Anzeigemodi in der Praxis immer noch zu, dass einige Informationen auslaufen.

In der nächsten Vorlesung sprechen wir also über Tor.


Die vollständige Version des Kurses ist hier verfügbar .

Danke, dass Sie bei uns bleiben. Magst du unsere Artikel? Möchten Sie weitere interessante Materialien sehen? Unterstützen Sie uns, indem Sie eine Bestellung aufgeben oder Freunden empfehlen, 30% Rabatt für Habr-Benutzer auf ein einzigartiges Analogon der Einstiegsserver, die wir für Sie erfunden haben: Die ganze Wahrheit über VPS (KVM) E5-2650 v4 (6 Kerne) 10 GB DDR4 240 GB SSD 1 Gbps $ 20 oder wie kann ich den Server freigeben? (Optionen sind für RAID1 und RAID10 verfügbar, bis zu 24 Kerne und bis zu 40 GB DDR4).

VPS (KVM) E5-2650 v4 (6 Kerne) 10 GB DDR4 240 GB SSD 1 Gbit / s bis Dezember kostenlos, wenn Sie für einen Zeitraum von sechs Monaten bezahlen, können Sie hier bestellen .

Dell R730xd 2 mal billiger? Nur bei uns2 x Intel Dodeca-Core Xeon E5-2650v4 128 GB DDR4 6 x 480 GB SSD 1 Gbit / s 100 TV ab 249 $ in den Niederlanden und den USA! Lesen Sie mehr darüber, wie Sie ein Infrastrukturgebäude bauen. Klasse C mit Servern Dell R730xd E5-2650 v4 im Wert von 9000 Euro für einen Cent?