flawopen.com/Incidents/angle-cross-platform-zero-day-december-2025
CVE-2025-14174: Chrome-ANGLE-Fehler und Apple-Verweis
Google bestätigte ANGLE-Ausnutzung in Chrome. Apple nutzt diese CVE für ein separates WebKit-Problem der Speicherinitialisierung.
Eine Person schreibt beim Übertragen eines Formulars über das vorgesehene Feld hinaus in den nächsten Datensatz: So lässt sich ein Zugriff außerhalb der Grenzen veranschaulichen. Ein Register kann eine Nummer für verschiedene Einträge wiederverwenden; dieselbe Kennung beweist keine identischen Fehler.
Kernkonzepte & Begriffe
ANGLE- Almost Native Graphics Layer Engine: Googles Open-Source-Bibliothek, die OpenGL-ES- und WebGL-Aufrufe in native APIs wie Metal, Direct3D und Vulkan übersetzt.
Metal-Backend- Der Teil von ANGLE für Apples Metal-API. Google ordnet den Fehler ANGLE in Chrome für Mac zu, nennt aber weder die betroffene Funktion noch den Patchmechanismus.
Zugriff außerhalb der Grenzen (CWE-787)- Zugriff außerhalb der Grenzen (
CWE-787): Ein Vorgang greift außerhalb der vorgesehenen Puffergrenzen auf Speicher zu.CWE-787bezeichnet genauer ein Schreiben außerhalb der Grenzen; Google veröffentlichte weder den genauen Vorgang noch die Ursache. Geprüfte Arithmetik- Ganzzahloperationen, die einen Überlauf melden, statt still umzubrechen, etwa base::CheckedNumeric in Chromium und ANGLE.
Zero-Day- Zero-Day: Eine Schwachstelle, die vor Verfügbarkeit eines Fixes ausgenutzt wird. Google bestätigte Ausnutzung des ANGLE-Problems in Chrome. Apple beschrieb im iOS-26.2-Hinweis separat gezielte Angriffe mit WebKit-Problemen.
Framework-Zuordnungen
- CWE-Referenz für die in diesem Leitfaden beschriebene Schwachstelle: CWE-787
- CISA KEV — aufgenommen am 2025-12-12 — CVE-2025-14174
Vorfall-Zeitstrahl
Google veröffentlicht Chrome 143.0.7499.110 für macOS und teilt mit, dass ein Exploit für den ANGLE-Fehler im Umlauf ist (Chromium-Issue 466192044).
Apples Hinweis nennt CVE-2025-14174 für ein WebKit-Problem der Speicherinitialisierung und separat CVE-2025-43529 für Speicherkorruption in WebKit. Apple zufolge könnte der zweite Bericht mit gezielter Ausnutzung zusammenhängen; das belegt keine gemeinsame Ursache mit Chromes ANGLE-Fehler. CISA nahm CVE-2025-14174 in KEV auf.
Schritt-für-Schritt Angriffsablauf
Eine präparierte Seite erreicht die Grafikschicht
Der CVE-Eintrag beschreibt eine präparierte HTML-Seite, die das ANGLE-Problem in Chrome für Mac auslöst. Der CVSS-Vektor erfordert eine Nutzeraktion; das Opfer muss also vom Angreifer kontrollierte Webinhalte öffnen.
ANGLE übersetzt nach Metal
Google nennt ANGLE als betroffene Chrome-Komponente. Der öffentliche Hinweis nennt weder die verantwortliche Funktion noch behauptet er, WebKit nutze denselben verwundbaren Code.
Speicher außerhalb eines Puffers wird angesprochen
Google beschreibt einen Speicherzugriff außerhalb der Grenzen, nennt aber weder Lesen oder Schreiben noch den betroffenen Puffer oder die Ursache. Der folgende Code ist allgemein gehalten, kein ANGLE-Code und keine Rekonstruktion dieser CVE.
Eingesetzt in gezielten Angriffen
Google bestätigt Ausnutzung von CVE-2025-14174. Apple berichtet separat über gezielte Ausnutzung von WebKit-Problemen und verwendet die CVE auch für einen WebKit-Eintrag zur Speicherinitialisierung. Die Hinweise belegen keine gemeinsame Kette zwischen Chrome und WebKit.
Quellcode: Verwundbar vs. Sicher
Google hat weder die Ursache auf Funktionsebene noch Patchdetails veröffentlicht. Dieses allgemeine C++20-Beispiel prüft den Offset und vergleicht die angeforderte Länge per Subtraktion mit der Restkapazität, um Überläufe zu vermeiden. Es reproduziert weder die CVE noch den tatsächlichen ANGLE-Fix.
// Nur ein allgemeines Beispiel; weder ANGLE-Quellcode noch die Implementierung von CVE-2025-14174.
bool copyRange(std::span<std::byte> destination,
std::size_t offset,
std::span<const std::byte> source)
{
std::copy(source.begin(), source.end(), destination.begin() + offset);
return true;
}
// Nur ein allgemeines Beispiel; weder ANGLE-Quellcode noch der Patch für CVE-2025-14174.
bool copyRange(std::span<std::byte> destination,
std::size_t offset,
std::span<const std::byte> source)
{
if (offset > destination.size() ||
source.size() > destination.size() - offset) {
return false;
}
std::copy(source.begin(), source.end(), destination.begin() + offset);
return true;
}
Checkliste für Engineering & Systemsicherheit
- ✓Aktualisieren Sie Chrome für Mac auf Version 143.0.7499.110 oder neuer; installieren Sie bei aktuellen Umgebungen die neueste unterstützte Version.
- ✓Erfassen Sie gemeinsam genutzte Parser- und Grafikbibliotheken (ANGLE, FreeType, libwebp, libxml2) über Ihre Produkte hinweg und abonnieren Sie deren Sicherheitshinweise, nicht nur die der einzelnen Browser.
- ✓Verlangen Sie geprüfte Arithmetik (base::CheckedNumeric, std::ckd_mul in C23 oder checked_mul in Rust) für jede Puffergröße, die aus vom Aufrufer gesteuerten Abmessungen berechnet wird, und markieren Sie ungeprüfte Multiplikationen im Code-Review.
- ✓Fuzzen Sie Textur- und Puffer-Uploadpfade in der CI mit extremen und Null-Abmessungen unter AddressSanitizer, damit Kopien außerhalb der Grenzen Tests vor dem Release scheitern lassen.
- ✓Verfolgen Sie Chromes ANGLE-Hinweis getrennt von Apples WebKit-Einträgen: gleiche Kennungen oder Daten belegen weder gemeinsame Ursachen noch eine gemeinsame Exploit-Kette.
Quellen
- CVE-2025-14174 — CVE-Eintrag (ANGLE in Google Chrome auf dem Mac)
- Google Chrome Releases — Stable-Channel-Update für Desktop (10. Dezember 2025)
- Apple — Informationen zum Sicherheitsinhalt von iOS 26.2 und iPadOS 26.2
- CISA — Eintrag zu CVE-2025-14174 im Katalog Known Exploited Vulnerabilities
- ANGLE — Chromium-Quellcode-Repository