Erfahren Sie mehr über Benny Czarnys Buch „Cybersecurity Upside Down“

Mehr erfahren
Wir verwenden künstliche Intelligenz für Website-Übersetzungen, und obwohl wir uns um Genauigkeit bemühen, kann es sein, dass sie nicht immer 100%ig präzise sind. Wir danken Ihnen für Ihr Verständnis.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint

Von OPSWAT

Wir freuen uns, eine Reihe von Blogs zur technischen Analyse einzuführen, die sich auf verschiedene gemeinsame Schwachstellen und Gefährdungen (CVEs) konzentrieren, die mit unseren fortschrittlichen Technologien zur Erkennung von Bedrohungen identifiziert und behoben wurden.Alle Forschungsarbeiten werden von den Studenten durchgeführt, die am OPSWAT Cybersecurity Fellowship Programm teilnehmen, das im September 2023 startet.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Studenten nahmen am OPSWAT Fellowship-Programm teil.

In diesem Blog erläutern wir Google Chrome CVE-2019-13720 und wie Unternehmen sich gegen CVE-2019-13720-Angriffe schützen können.

Was ist Google Chrome und wann wurde es gegründet?

Google Chrome ist ein plattformübergreifender Webbrowser, der von Google entwickelt und offiziell am 2. September 2008 veröffentlicht wurde. Er wurde im Rahmen der Bemühungen von Google entwickelt, einen besseren, moderneren Browser zu schaffen. Er bot damals viele neue Funktionen, darunter Tabbed Browsing, Datenschutzmodus und Synchronisierung mit Google-Diensten. Seit seiner Veröffentlichung hat er sich zu einem der beliebtesten Webbrowser weltweit entwickelt. Schätzungen zufolge wird Google Chrome im Jahr 2021 etwa 3,2 Milliarden Nutzer haben.

Aufgrund seiner Beliebtheit ist Google Chrome zu einem Brennpunkt für Forschung und Angriffe geworden und zieht sowohl ethische Hacker als auch böswillige Hacker an. Zu den häufig in Google Chrome identifizierten Schwachstellen gehören u. a. Denial of Services (DoS), Informationsverluste und Remotecodeausführung. Hinsichtlich der Sicherheitsanfälligkeit für Remotecodeausführung gibt es in Google Chrome zwei Arten: Sandbox-Escape und Non-Escape.

Was ist CVE-2019-13720?

CVE-2019-13720 ist eine Use After Free (UAF)-Schwachstelle von WebAudio in Google Chrome vor Version 78.0.3904.87, die es einem entfernten Angreifer ermöglicht, eine Heap Corruption über eine gestaltete HTML-Seite auszunutzen. Wenn das Opfer auf eine bösartige Webseite zugreift oder eine manipulierte HTML-Seite in einem anfälligen Google Chrome-Browser öffnet, wird der bösartige Code auf dem Endpunkt des Opfers ausgeführt. Dieses CVE wurde erstmals von Anton Ivanov und Alexey Kulaev im Jahr 2019 gemeldet.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Informationen zu CVE-2019-13720 auf NIST NVD

Aus technischer Sicht kann eine Use-after-free-Schwachstelle aufgrund einer Race-Condition zwischen den Render- und Audio-Threads in der Audiokomponente von Qt WebEngine ausgenutzt werden, die es entfernten Angreifern ermöglicht, WebAssembly-Shellcode auszuführen, was dazu führt, dass das Gerät des Opfers kompromittiert wird. Die Lösung für dieses Problem besteht darin, dass alle Qt WebEngine-Benutzer auf die neueste Version aktualisieren.

Die Phasen des Angriffs

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Die Angriffsprozesse

Die Angreifer erstellen eine spezielle URL mit dem bösartigen HTML-Code und senden eine Phishing-E-Mail mit dem Link an das Opfer. Wenn das Opfer die E-Mail öffnet und auf den Link klickt, wird der bösartige Code ausgeführt und ermöglicht es dem Angreifer, das betroffene System zu übernehmen. Details zu den Remote-Code-Taktiken, wie sie in einem HTML-Dokument vorkommen, können hier nachgelesen werden.

Was sind Use After Free (UAF) und Heap-Spray-Schwachstellen?

Eine UAF-Schwachstelle ist eine Art von Sicherheitslücke, die auftritt, wenn ein Programm weiterhin Speicher verwendet, nachdem er freigegeben wurde. Dies kann zu verschiedenen nachteiligen Folgen führen, z. B. zur Beschädigung von Daten, zur Ausführung von beliebigem Code und zum Absturz des Systems.

Heap-Spraying ist eine Technik zur Bereitstellung von Nutzdaten, bei der mehrere Bytes an verschiedenen Stellen im Heap geschrieben werden. Dabei wird eine manipulierte Nutzlast (d. h. schädliche Daten) in den Heap-Speicher injiziert, wodurch sichergestellt wird, dass der Ausführungsfluss in den gesprühten Speicher und nicht in den ursprünglichen Code der Anwendung springt. Der Zweck dieses Angriffs besteht in der Regel darin, die Kontrolle über die EIP-Registrierung zu erlangen.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Visualisierung der Heap-Spray-Technik

Was ist WebAssembly?

WebAssembly, oft abgekürzt als Wasm, ist ein neues binäres Befehlsformat, das als portables Ziel für die Kompilierung von Hochsprachen wie C/C++ dient und es ihnen ermöglicht, in der JavaScript-Engine eines Webbrowsers mit nahezu natürlicher Geschwindigkeit zu laufen.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Kompilieren von Code in WebAssembly

Da WebAssembly jedoch aus Sprachen kompiliert werden kann, die nicht speichersicherfähig sind, wie z. B. C/C++, können gängige Programmierschwachstellen wie Pufferüberläufe oder Format-String-Schwachstellen in die kreuzkompilierten WebAssembly-Binärdateien eingeschleust werden. Diese Möglichkeit der Aufnahme von Schwachstellen in WebAssembly-Module hat die Angriffsfläche moderner Webanwendungen vergrößert.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Entwurf einer typischen Anwendung mit WebAssembly

Was ist eine Race-Condition-Schwachstelle?

Eine Race-Condition-Schwachstelle in Software tritt auf, wenn mehrere Prozesse oder Threads gleichzeitig auf eine gemeinsame Ressource zugreifen, was aufgrund des Zeitpunkts des Zugriffs zu unvorhersehbaren Ergebnissen oder Betriebsunterbrechungen führt. Wenn ein Programm eine Race-Condition-Schwachstelle aufweist, kann dies zu verschiedenen Problemen führen, z. B. zum Absturz der Anwendung, zur Beschädigung von Daten, zu falschen Ergebnissen oder zu Inkonsistenzen. Angreifer können diese Schwachstelle ausnutzen, um sich unbefugten Zugriff zu verschaffen, Informationen abzugreifen, die Rechte zu erweitern oder Systemabstürze herbeizuführen.

Eine TOCTTOU-Schwachstelle, die als Race Condition-Schwachstelle eingestuft wird, nutzt die Zeitspanne zwischen der Prüfung und der Verwendung einer Ressource aus.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Veranschaulichung einer Software-Race-Bedingung. Quelle: Devopedia 2020 (*) TOCTOU (Time of Check to Time Of Use)

Wie funktioniert CVE-2019-13720?

Um diese Sicherheitslücke auszunutzen, fügt der Forscher JavaScript-Code an eine HTML-Datei an. Wenn ein Benutzer die HTML-Datei aufruft, versucht das Skript, die durchgesickerte Adresse zu finden, indem es zwei Threads (Haupt-Thread und Audio-Thread) erstellt, die dieselben Pufferdaten verarbeiten. Die durchgesickerte Adresse des temporary_buffer_object in ReverbConvolverStage wird dann verwendet, um den Zeiger des feedforward_array in IIRFilterNode (der dieselbe Superseite mit dem Convolver teilt) zu erhalten. Anschließend versucht der Forscher, den Zeiger des feedforward_array in der zweiten Trigger-UAF zu erhalten.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
Use-After-Free Trigger-Prozess

WebAssembly übernimmt die Ausführung des Shellcodes. Um die Ausführung des Shellcodes zu ermöglichen, versucht der Forscher, den IIRFilter freizugeben und schreibt in den GCPreventer, bis er die Kontrolle darüber erlangt, wo neue Zuweisungen vorgenommen werden, ohne dass Sprays erforderlich sind. Schließlich schreibt der Forscher den Shellcode in die Just-In-Time-Region (JIT) im Speicher. Folglich führt das WebAssembly-Modul den Shellcode aus, sobald ein Fehlerereignis des Dateilesegeräts eintritt.

Um den mit dieser Sicherheitslücke verbundenen Shell-Code auszuführen, muss der Benutzer die Sandbox in der anfälligen Version von Chrome deaktivieren.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint

Wenn der Shell-Code ausgeführt wird, öffnet er automatisch die Notepad-Dienste auf dem Gerät des Opfers.

Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint

Sanierungsmethode

MetaDefender Endpoint, eine von OPSWAT entwickelte Endpoint-Sicherheitslösung, ermöglicht es Nutzern, diese Angriffe zu erkennen und ihre Systeme davor zu schützen. Nachdem der Nutzer die Funktion „Privacy Sandbox “ (--no-sandbox) deaktiviert hat, kann MetaDefender Endpoint CVEs erkennen und die neuesten Google Chrome-Patches anwenden. Anschließend kann der Nutzer Google Chrome manuell auf die neueste Version aktualisieren oder die Funktion „Auto-Update“ auf der Registerkarte „ Patch Management “ aktivieren, damit OPSWAT MetaDefender Endpoint den Browser automatisch aktualisiert, sobald neue Patches verfügbar sind.

Um sich vor schädlichem Code zu schützen, sollten Nutzer E-Mail-Filtertools einsetzen, um Phishing-Angriffe zu erkennen, und vermeiden, auf unbekannte URLs in E-Mails zu klicken.

MetaDefender Endpoint Hauptproduktmerkmale und Vorteile

  • Überprüfen und beseitigen Sie gefährdete Anwendungen. Gefährdete oder veraltete Anwendungen können in der MetaDefender Endpoint UI angezeigt werden.
  • Überprüfen Sie, ob der Anti-Malware-Schutz auf dem Betriebssystem richtig konfiguriert ist.
  • Gewährleistung der Einhaltung der Sicherheitsstandards des Unternehmens.
  • Sicherheit bei der Festplattenverschlüsselung.
  • Überprüfung von Betriebssystem-Patches.
  • Mehrere Optionen für Malware-Scans und Ankündigungen zum Schutz vor Malware auf Endgeräten.
Behebung von Google Chrome-Schwachstellen mit MetaDefender Endpoint
MetaDefender Endpoint UI

MetaDefender Endpoint for Endpoint Vulnerability and Application Patching kann hier heruntergeladen werden.


Referenz

  1. https://nvd.nist.gov/vuln/detail/CVE-2019-13720
  2. https://bugs.chromium.org/p/chromium/issues/detail?id=1019226
  3. https://www.w3.org/TR/webaudio/
  4. https://security.gentoo.org/glsa/202004-04
  5. https://www.cve.org/CVERecord?id=CVE-2019-13720
  6. https://packetstormsecurity.com/files/167066/Google-Chrome-78.0.3904.70-Remote-Code-Execution.html
  7. https://devopedia.org/race-condition-software
  8. https://webassembly.org/
  9. https://www.researchgate.net/figure/WebAssembly-high-level-architecture_fig1_360232889
  10. https://www.researchgate.net/publication/331990070_Native_Web_Audio_API_Plugins
  11. https://whitehat.vn/threads/gioi-thieu-ky-thuat-khai-thac-exploit-heap-spray.5056/
  12. https://www.opswat.com/

Bleiben Sie auf dem Laufenden mit OPSWAT!

Melden Sie sich noch heute an, um die neuesten Unternehmensnachrichten, Berichte, Veranstaltungshinweise und vieles mehr zu erhalten.