Bußgeld-Kopfzeile

Chrom 2025 Null-Tage: Die ANGLE, V8 und Mojo Kill Chain

Im Jahr 2025 hat sich die Landschaft der Browser-Ausbeutung grundlegend verändert. Jahrelang wurde das Thema von "Use-After-Free"-Fehlern (UAF) im DOM (Document Object Model) dominiert. Mit der Reifung von Googles MiraclePtr (ein Mechanismus zum Schutz von Rohzeigern) und die umfassende Durchsetzung der V8-Sandkastenwurde die Messlatte für eine erfolgreiche Verwertung auf ein noch nie dagewesenes Niveau gehoben.

Die Angreifer - insbesondere fortgeschrittene APT-Gruppen und kommerzielle Überwachungsanbieter - haben sich angepasst. Die Exploits von 2025 waren keine einfachen Abstürze, sondern elegante, mehrstufige Kill Chains. Sie kombinierten V8 Typ Verwirrung um den Renderer zu kompromittieren, nutzte die ANGLE Grafikschicht, um privilegierten GPU-Zugriff zu erhalten, und missbraucht Mojo IPC Logik, um dem Sandkasten zu entkommen.

Dieser Artikel enthält eine technische Kernanalyse dieser Vektoren, die sich auf folgende Punkte konzentriert CVE-2025-14174 (ANGLE), CVE-2025-13223 (V8), und die logische Sandbox-Flucht CVE-2025-2783Dabei wird untersucht, wie die KI-gesteuerte automatisierte Ausbeutung zur einzigen Möglichkeit wird, diese komplexen Ketten zu erkennen, bevor sie in die freie Wildbahn gelangen.

Die neue Angriffsfläche: ANGLE und CVE-2025-14174

Schwachstelle: Out-of-Bounds Write im Metal-Backend

Komponente: ANGLE (Fast Native Graphics Layer Engine)

Auswirkungen: GPU-Prozesscode-Ausführung

Während V8 die Schlagzeilen beherrscht, ist der Grafik-Stack zum weichen Unterbauch der Browser-Sicherheit geworden. CVE-2025-14174Die im Dezember 2025 bekannt gewordenen Angriffe zielten auf die Abstraktionsschicht von ANGLE-Chrome ab, die WebGL/WebGPU-Aufrufe in systemeigene APIs (DirectX, OpenGL, Metal, Vulkan) umwandelt.

Die technische Mechanik

Die Schwachstelle befand sich speziell in der Übersetzung der WebGL-Aufrufe von ANGLE in Apples Metall API. Wenn eine Web-Seite eine texImage2D Aufruf muss ANGLE den Speicherstride und das Padding berechnen, um die Textur in den Speicherbereich der GPU zu übertragen.

In CVE-2025-14174, die Berechnung für pixelDepthPitch (verwendet in 3D-Texturen) litt unter einem Integer-Überlauf, wenn bestimmte Parameter für die Packungsausrichtung (GL_UNPACK_ALIGNMENT) wurden mit extremen Texturmaßen kombiniert.

Das Exploit-Primitiv:

  1. Haufen Feng Shui: Der Angreifer überschwemmt den GPU-Prozess-Heap mit SharedMemory Objekte, um Speicherabschnitte auszurichten.
  2. Auslöser: Ein bestimmter WebGL-Zeichenaufruf löst den Überlauf aus und schreibt vom Angreifer kontrollierte Texturdaten über die Grenzen des zugewiesenen Puffers hinaus.
  3. Korruption: Der Überlauf überschreibt die vtable Zeiger eines C++-Objekts, das sich im benachbarten Heap-Chunk befindet.
  4. Ausführung: Wenn der GPU-Prozess versucht, dieses Objekt zu zerstören oder zu verwenden, ruft er einen Funktionszeiger auf, der nun vom Angreifer kontrolliert wird.

Warum das wichtig ist:

Der GPU-Prozess ist ein privilegiertes Ziel. Anders als der stark eingeschränkte Renderer-Prozess interagiert der GPU-Prozess direkt mit Treibern auf Kernel-Ebene und Fenstersystemen. Die Erlangung von RCE umgeht hier oft mehrere Schichten der Betriebssystemabwehr.

Der Klassiker hat sich weiterentwickelt: V8 Typ Verwirrung (CVE-2025-13223)

Schwachstelle: Fehler in der JIT-Optimierung

Bauteil: V8-Motor (Turbogebläse)

Auswirkungen: Renderer RCE (innerhalb der V8-Sandbox)

Obwohl die V8-Sandbox versucht, den Heap zu isolieren, V8 Typ Verwirrung ist nach wie vor die wichtigste Methode, um erste Lese- und Schreibprimitive zu erlangen. CVE-2025-13223 weist auf einen Fehler in der TurboFan-Optimierungspipeline hin.

Das Scheitern von CheckMaps

TurboFan optimiert JavaScript, indem es Annahmen über Objekttypen (Maps) trifft. Wenn Code wiederholt auf ein Array von Ganzzahlen zugreift, kompiliert TurboFan Maschinencode, der für Ganzzahlen optimiert ist. Um Sicherheit zu gewährleisten, fügt er CheckMaps Knotenpunkte.

CVE-2025-13223 war ein Redundanz-Eliminierung Fehler. Der Optimierer hat fälschlicherweise festgestellt, dass ein CheckMaps Knoten als überflüssig und entfernte ihn, obwohl ein Nebeneffekt in einem früheren Funktionsaufruf die Map des Objekts verändern könnte.

Der konzeptionelle Exploit:

JavaScript

`function vulnerable_opt(arr, trigger_obj) { // 1. TurboFan sieht, dass arr ein Array von Doubles ist. let x = arr[0];

// 2. Side-effect: This function changes 'arr' to an array of Objects.
// However, TurboFan removed the Map check after this call due to the bug.
trigger_obj.toString(); 

// 3. Type Confusion: TurboFan writes a float, but memory is now Object pointers.
// We write a controlled float value (0x4141...) which is interpreted as a pointer.
arr[1] = 1.337e-308; 

}`

Beseitigung der V8-Sandbox

Im Jahr 2025 werden adrOf und fakeObj Primitive nicht mehr ausreicht, weil die V8-Sandkasten. Dieser Sicherheitsmechanismus "sperrt" den V8-Heap ein, d. h. ein Angreifer kann nur Speicher beschädigen innerhalb die Sandbox. Sie können keine Rücksprungadressen auf dem Stack überschreiben oder Partitionszuweisungen außerhalb des Käfigs ändern.

Um CVE-2025-13223 als Waffe einzusetzen, nutzten Angreifer es, um eine WasmInstanceObject. Durch die Änderung der Sprungtabelle einer WebAssembly-Instanz (die sich innerhalb der Sandbox befindet) konnten sie die Ausführung auf beliebigen Shellcode umleiten, der über JIT kompiliert wurde, und so effektiv die Ausführung von beliebigem Code erreichen innerhalb der Beschränkungen des Renderers.

Chrome 2025 Zero-Days: Die ANGLE, V8 und Mojo Kill Chain Penligent

Die Flucht: Mojo IPC Logik-Fehler (CVE-2025-2783)

Schwachstelle: Unzureichende Validierung von Berechtigungen

Komponente: Mojo IPC (Inter-Prozess-Kommunikation)

Auswirkungen: Sandbox-Escape (vollständige Systemkompromittierung)

Wenn der Renderer kompromittiert ist, ist der Angreifer immer noch in der Sandbox gefangen. Dies ist der Punkt Mojo IPC kommt herein. Mojo ist das leistungsstarke IPC-System, das Chrome für die Kommunikation zwischen dem nicht vertrauenswürdigen Renderer und dem privilegierten Browser-Prozess verwendet.

CVE-2025-2783 war kein Fehler im Speicher, sondern ein Logikfehler in der Implementierung des FileSystemAccess Schnittstelle.

Der Fehler in der Schnittstellendefinitionssprache (IDL)

Chrome definiert IPC-Schnittstellen mit .mojom Dateien. Die Schwachstelle bestand in einer Methode, die Lesezugriff auf temporäre Dateien gewähren sollte.

C++

// Anfällige Logik im Browser-Prozess void OnRequestFileAccess(int32 render_frame_id, String file_path) { // FLAW: Der Browser prüfte, ob der Pfad "sicher" war (z.B. kein ../) // ABER er prüfte nicht, ob der Renderer den Dateipfad *besaß*. // Ein Angreifer könnte Zugriff auf Profildaten oder Cookies verlangen. GrantAccess(file_path); }

Die Ausnutzungskette:

  1. Renderer kompromittieren: Verwenden Sie CVE-2025-13223, um nativen Code auszuführen.
  2. Hook Mojo: Suchen Sie die Mojo-Versandtabellen im Speicher.
  3. Nachricht fälschen: Konstruieren Sie eine rohe Mojo-Nachricht, indem Sie OnRequestFileAccess mit einem Pfad, der auf sensible Benutzerdaten verweist (z. B., Login-Daten SQLite DB).
  4. Exfiltrieren: Da der Browser-Prozess das Lesen der Datei mit hohen Rechten ausführt, gibt er das Datei-Handle an den Renderer zurück und umgeht so die Dateiberechtigungen des Betriebssystems.

Dies ist die "Logik-Ära" der Browser-Ausnutzung: Verwendung gültiger Funktionen auf ungültige Weise, um Sicherheitsgrenzen zu überschreiten.

Chrome 2025 Zero-Days Die ANGLE, V8, und Mojo Kill Chain

Die Zukunft der Detektion: KI-gesteuerte primitive Synthese

Die Komplexität dieser Ketten - insbesondere der Sprung von einer V8-Heap-Beschädigung zu einem stabilen Primitiv und dann zu einem Mojo-Logikfehler - übersteigt die Möglichkeiten der manuellen Analyse. Fuzzers sind gut im Auffinden von Abstürzen, nicht von Logikfehlern.

Dies ist der Einsatzbereich von Penligent.ai.

Automatisierte Exploit-Generierung (AEG)

Penligent vollzieht einen Paradigmenwechsel von "Vulnerability Scanning" zu "Automated Exploit Generation".

  1. Heap-Layout-Synthese: Bei Schwachstellen wie CVE-2025-14174 (ANGLE) analysieren die KI-Agenten von Penligent das Verhalten des Heap-Allokators, um automatisch die genaue Abfolge von Zuweisungen (Spraying) zu bestimmen, die erforderlich ist, um ein Zielobjekt neben dem Überlaufpuffer zu platzieren. Damit wird das "Heap Feng Shui"-Rätsel mathematisch gelöst.
  2. IDL Logic Reasoning: Für Mojo-Exploits (CVE-2025-2783) analysiert Penligent die gesamte Codebasis von Chrome .mojom Definitionen. Es erstellt einen Abhängigkeitsgraphen von IPC-Aufrufen und verwendet Reinforcement Learning (RL), um Sequenzen gültiger Nachrichten zu identifizieren, die zu privilegierten Statusänderungen führen.

Durch die Automatisierung des Aufbaus der gesamten Kill Chain - vom Primitivling bis zum Escape - bietet Penligent die einzige zuverlässige Möglichkeit zu überprüfen, ob ein Patch tatsächlich den Exploit-Pfad unterbricht oder lediglich das Symptom behebt.

Schlussfolgerung und Abhilfestrategien

Die Zero-Day-Landschaft von Chrome aus dem Jahr 2025 lehrt uns, dass die "Hardening"-Ära zwar funktioniert, aber Angreifer zu Logikfehlern und Subsystem-Missbrauch drängt.

Hardcore-Verteidigungsstrategie:

  1. Strikte Standortisolierung: Sicherstellen Strict-Origin-Isolation ist aktiviert, um Datenlecks zu verhindern, selbst wenn der Renderer kompromittiert ist.
  2. Deaktivieren Sie WebGL/WebGPU in kritischen Zonen: Verwenden Sie für hochsichere interne Portale Unternehmensrichtlinien, um die Hardwarebeschleunigung zu deaktivieren und so die ANGLE-Angriffsfläche (CVE-2025-14174) effektiv zu neutralisieren.
  3. IPC-Überwachung: Abwehrteams müssen mit der Überwachung des internen IPC-Verkehrs beginnen. EDRs schauen sich selten Mojo-Nachrichten an, aber genau dort findet der Ausbruch statt.

Der Kampf hat sich vom Stack und Heap zu den Logikgattern der Browser-Architektur verlagert. Sicherheitsingenieure müssen ihre Werkzeuge und ihre Denkweise entsprechend anpassen.

Zuverlässige Referenzen

Teilen Sie den Beitrag:
Verwandte Beiträge