Chrome schließt 24 Sicherheitslücken und aktiviert das „Sanitizer“-Sicherheitssystem PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Chrome patcht 24 Sicherheitslücken und aktiviert das „Sanitizer“-Sicherheitssystem

Googles neuester Chrome-Browser, Version 105, ist aus, obwohl die vollständige Versionsnummer ärgerlicherweise unterschiedlich ist, je nachdem, ob Sie Windows, Mac oder Linux verwenden.

Auf Unix-ähnlichen Systemen (Mac und Linux) möchten Sie 105.0.5195.52, aber unter Windows suchen Sie nach 105.0.5195.54.

Laut Google enthält diese neue Version 24 Sicherheitsfixes, obwohl keine davon als „in-the-wild“ gemeldet wird, was bedeutet, dass diesmal keine Zero-Days gepatcht wurden.

Trotzdem gibt es eine Schwachstelle, die als "Dubbing" bezeichnet wird Kritisch, und weitere acht bewertet High.

Von den behobenen Fehlern sind etwas mehr als die Hälfte auf Speicherfehler zurückzuführen, wobei neun als Fehler aufgeführt sind gebrauchsfertig Bugs und vier als Heap-Puffer läuft über.

Arten von Speicherfehlern erklärt

A gebrauchsfertig ist genau das, was es sagt: Sie geben Speicher zurück, um ihn für einen anderen Teil des Programms freizugeben, verwenden ihn aber trotzdem weiter und beeinträchtigen so möglicherweise den korrekten Betrieb Ihrer App.

Stellen Sie sich zum Beispiel vor, dass der Teil des Programms, der glaubt, jetzt alleinigen Zugriff auf den problematischen Speicherblock zu haben, eine nicht vertrauenswürdige Eingabe erhält und sorgfältig überprüft, ob die neuen Daten sicher zu verwenden sind …

…aber dann, in dem Moment, bevor es anfängt, diese validierte Eingabe zu verwenden, stört Ihr fehlerhafter „Use-after-free“-Code und injiziert veraltete, unsichere Daten in denselben Teil des Speichers.

Plötzlich verhält sich fehlerfreier Code an anderer Stelle im Programm so, als wäre er selbst fehlerhaft, dank des Fehlers in Ihrem Code, der gerade das ungültig machte, was sich im Speicher befand.

Angreifer, die einen Weg finden, das Timing der unerwarteten Intervention Ihres Codes zu manipulieren, können das Programm möglicherweise nicht nur nach Belieben zum Absturz bringen, sondern ihm auch die Kontrolle entziehen und so das verursachen, was als Remote-Code-Ausführung.

Und ein Heap-Pufferüberlauf bezieht sich auf einen Fehler, bei dem Sie mehr Daten in den Speicher schreiben, als in den ursprünglich zugewiesenen Speicherplatz passen. (Heap ist der Fachjargon für die Sammlung von Speicherblöcken, die derzeit vom System verwaltet werden.)

Wenn ein anderer Teil des Programms zufällig einen Speicherblock in der Nähe oder neben Ihrem im Heap hat, dann werden die überflüssigen Daten, die Sie gerade herausgeschrieben haben, nicht harmlos in ungenutzten Speicherplatz überlaufen.

Stattdessen werden Daten beschädigt, die woanders aktiv verwendet werden, was ähnliche Folgen hat wie das, was wir gerade für einen Use-after-Free-Bug beschrieben haben.

Das „Sanitizer“-System

Glücklicherweise hat Google nicht nur Fehlfunktionen behoben, die überhaupt nicht vorhanden sein sollten, sondern auch die Einführung einer neuen Funktion angekündigt fügt Schutz hinzu gegen eine Klasse von Browserfehlern bekannt als Cross-Site-Scripting (XSS).

XSS-Fehler werden dadurch verursacht, dass der Browser nicht vertrauenswürdige Daten direkt in die aktuelle Webseite einfügt, z. B. aus einem Webformular, das von einem entfernten Benutzer übermittelt wurde, ohne zuerst nach riskanten Inhalten zu suchen (und diese zu entfernen).

Stellen Sie sich zum Beispiel vor, Sie haben eine Webseite, die anbietet, mir zu zeigen, wie eine Textzeichenfolge meiner Wahl in Ihrer flippigen neuen Schriftart aussieht.

Wenn ich den Beispieltext eintippe Cwm fjord bank glyphs vext quiz (ein erfundenes, aber vage aussagekräftiges Mashup aus Englisch und Walisisch, das alle 26 Buchstaben des Alphabets in nur 26 Buchstaben enthält, falls Sie sich das fragen sollten), dann können Sie genau diesen Text sicher in die von Ihnen erstellte Webseite einfügen.

In JavaScript könnten Sie beispielsweise den Hauptteil der Webseite wie folgt umschreiben und den von mir bereitgestellten Text ohne Änderungen einfügen:

document.body.innerHTML = " Cwm-Fjordufer-Glyphen-Vext-Quiz"

Aber wenn ich geschummelt habe und Sie gebeten hätte, die Textzeichenfolge anzuzeigen Cwm fjord<script>alert(42)</script> Stattdessen wäre es leichtsinnig von Ihnen, dies zu tun ...

document.body.innerHTML = " Cwm-Fjord alert(42) "

… weil Sie mir erlauben würden, nicht vertrauenswürdigen JavaScript-Code einzufügen my Wählen Sie direkt in Ihre Webseite, wo mein Code Ihre Cookies lesen und auf Daten zugreifen könnte, die ansonsten tabu wären.

Also, um das zu machen, was bekannt ist Reinige deine Eingaben einfacher, Chrome hat jetzt offiziell die Unterstützung für eine neue Browserfunktion namens aktiviert setHTML().

Dies kann verwendet werden, um neue HTML-Inhalte durch eine Funktion namens zu pushen Sanitizer zuerst, damit Sie, wenn Sie stattdessen diesen Code verwenden, …

document.body.setHTML(" Cwm-Fjord alert(42) ")

… dann scannt Chrome den vorgeschlagenen neuen HTML-String zuerst auf Sicherheitsprobleme und entfernt automatisch jeden Text, der ein Risiko darstellen könnte.

Sie können dies in Aktion über die sehen Entwicklerwerkzeuge indem Sie das obige ausführen setHTML() Code bei der Konsul (Console) Eingabeaufforderung und anschließendes Abrufen des eigentlichen HTML-Codes, der in die eingefügt wurde document.body variabel, wie wir es hier getan haben:

Beachten Sie, wie das hervorgehobene Skript-Tag aus dem schließlich in die Seite eingefügten HTML „bereinigt“ wurde.

Obwohl wir explizit a setzen <script> -Tag in der Eingabe, die wir an übergeben haben setHTML() -Funktion wurde der Skriptcode automatisch aus der erstellten Ausgabe entfernt.

Wenn Sie wirklich potenziell gefährlichen Text in ein HTML-Element einfügen müssen, können Sie ein zweites Argument zum hinzufügen setHTML() Funktion, die verschiedene Arten von riskanten Inhalten festlegt, die blockiert oder zugelassen werden sollen.

Wenn dieses zweite Argument wie oben weggelassen wird, arbeitet der Sanitizer standardmäßig auf seiner maximalen Sicherheitsstufe und löscht automatisch alle ihm bekannten gefährlichen Inhalte.

Was ist zu tun?

  • Wenn Sie ein Chrome-Benutzer sind. Überprüfen Sie, ob Sie auf dem neuesten Stand sind, indem Sie auf klicken Drei Punkte > Hilfe > Über Google Chrome, oder indem Sie zu der speziellen URL navigieren chrome://settings/help.
  • Wenn Sie ein Webprogrammierer sind. Lernen Sie Neues kennen Sanitizer und setHTML() Funktionalität durch Lesen Ratschläge von Google und für MDN-Webdokumente.

Übrigens, wenn Sie Firefox verwenden, Sanitizer ist verfügbar, aber noch nicht standardmäßig aktiviert. Sie können es aktivieren, um mehr darüber zu erfahren, indem Sie zu gehen about:config und Umschalten der dom.security.sanitizer.enabled Option zu true.


Zeitstempel:

Mehr von Nackte Sicherheit