Sicherheitslücke: Browser speichern Passwörter im Klartext im Arbeitsspeicher

Sven Bauduin
175 Kommentare
Sicherheitslücke: Browser speichern Passwörter im Klartext im Arbeitsspeicher
Bild: Darwin Laganzon via Pixabay | CC0 1.0

Sicherheitsforscher haben eine Schwachstelle in Google Chrome gefunden, welche das Auslesen von Passwörtern im Klartext aus dem RAM ermöglicht. Mittlerweile gilt als gesichert, dass neben Googles Browser auch Microsoft Edge und Firefox betroffen ist und sehr sensible Daten unverschlüsselt im RAM ablegt.

Der Arbeitsspeicher verrät Passwörter im Klartext

Die als ethische Hacker („white hat hackers“) bekannten Sicherheitsforscher von CyberArk Labs rund um den Sicherheitsexperten Zeev Ben Porat hatten die Schwachstelle erstmals am 8. Juni in Chrome demonstrieren können. Der Browser speichert sensible Daten wie Passwörter und Cookies, wie beispielsweise Account- und Zugangsdaten, unverschlüsselt im Klartext im Arbeitsspeicher. Um diese auszulesen ist bei entsprechendem Zugriff auf das System lediglich das kleine Tool ProcessHacker respektive die ProcessHacker.exe notwendig.

Die Sicherheitsforscher fassen die entdeckte Sicherheitslücke im Detail wie folgt zusammen:

TL; DR
  • Credential data (URL/username/password) is stored in Chrome’s memory in clear-text format. In addition to data that is dynamically entered when signing into specific web applications, an attacker can cause the browser to load into memory all the passwords that are stored in the password manager (“Login Data” file).
  • Cookies’ data (cookies’ value + properties) is stored in Chrome’s memory in clear-text format (when the relevant application is active). This includes sensitive session cookies.
  • This information can be extracted effectively by a standard (non-elevated) process running in the local machine and performing direct access to Chrome’s memory (using OpenProcess + ReadProcessMemory APIs).
  • The extracted data can be used to hijack users’ accounts even when they are protected by an MFA mechanism (using the “session-cookies” data).
  • Sample session hijacking was “POC-ed” for Gmail, OneDrive and GitHub.
  • Similar weaknesses were seen in the Microsoft Edge browser (and will be found, presumably, in other browsers that are based on the Chromium engine).
  • This blog describes the direct memory access attack on the browser. There are other published methods of stealing this sensitive data. My next blog post shall provide a broader description of known “credential-stealing from browsers” attack techniques and will discuss possible mitigations for all of them.
  • Why this is a significant issue: If one accepts the “assume breach” paradigm, then [all] the weaknesses in the way Chromium-based browsers treat sensitive credential data should be considered a major security risk. Mitigation should treat all these weaknesses.
  • “Better Together:” We shared the results of this research with CrowdStrike. This collaboration helped improve the endpoint protection products of both companies.
CyberArk Labs

Neben dem Google Chrome seien auch alle andere Browser auf der Basis von Chromium von der Sicherheitslücke betroffen, so CyberArk Labs.

Auch der Mozilla Firefox ist betroffen

Wie der Windows- und Sicherheitsexperte Günther Born jetzt über seine Website Borns IT- und Windows-Blog berichtet, ist es ihm gelungen, die Schwachstelle nicht nur in Google Chrome und anderen Chromium-Browsern wie Microsoft Edge sondern auch in Mozilla Firefox nachzuweisen und auszunutzen. Bereits im Jahr 2015 hatte der Software- und Sicherheitsexperte Satyam Singh erstmals auf die Gefahren von sensiblen Browser-Daten im Arbeitsspeicher hingewiesen.

In allen relevanten Browsern lässt sich folgendes Szenario nachweisen:

  • Anmeldedaten (URL/Benutzername/Kennwort) werden im Speicher von Chrome im Klartextformat gespeichert.
  • Zusätzlich zu den Daten, die dynamisch eingegeben werden, wenn man sich bei bestimmten Webanwendungen anmeldet, kann ein Angreifer den Browser dazu bringen, alle Passwörter in den Speicher zu laden, die im Passwort-Manager gespeichert sind.
  • Die Daten von Cookies werden im Speicher von Chrome im Klartext gespeichert wenn die betreffende Anwendung aktiv ist. Dies schließt sensible Sitzungscookies ein.

Mit den APIs OpenProcess und ReadProcessMemory lassen sich sensible Daten aus dem RAM extrahieren und die sogenannten „Session-Cookies“ erlauben ein Umgehen von Schutzmaßnahmen wie dem MFA-Mechanismus.

Die Sicherheitsforscher demonstrieren in mehreren Videos, wie einfach sich die Passwörter für Benutzerkonten wie beispielsweise Gmail in der Praxis aus dem Arbeitsspeicher auslesen lassen. Mit dem auf der Filehosting-Plattform angebotenen Open-Source-Tool Process Hacker in der neuesten Version 2.39 r124 lassen sich die Inhalte des Arbeitsspeichers problemlos analysieren und auswerten.

Google will Schwachstelle nicht schließen

Die Sicherheitsexperten um Zeev Ben Porat haben Google über die Schwachstelle informiert, als Reaktion aber die Auskunft erhalten, dass das Chrome-Team diese nicht schließen wird. Auch eine ausführliche Begründung lieferten die Entwickler. Nach wie vor lassen sich die Passwörter mit Hilfe des aktuellen Process Hacker aus dem RAM auslesen.

Sowohl CyberArk Labs als auch Günter Born sehen die Antwort von Google als zu kurz gedacht an, denn sie vertreten die Meinung, Kennwörter sollten nicht im Klartext im Browser-Speicher zu finden sein.

14 Wochen nachdem Google die Meldung der Sicherheitslücke mit „Won't Fix!“ beantwortet hat, hat CyberArk Labs die Schwachstelle öffentlich gemacht.