Sicherheitsanfälligkeit in OpenOffice, die die Ausführung von Code beim Öffnen einer Datei ermöglicht

Im Büro-Paket Apache OpenOffice wurde eine Sicherheitsanfälligkeit (CVE-2021-33035) festgestellt, die die Ausführung von Code beim Öffnen einer speziell gestalteten Datei im DBF-Format ermöglicht. Der entdeckende Forscher warnte vor der Erstellung eines funktionierenden Exploits für die Windows-Plattform. Ein Fix für die Schwachstelle ist derzeit nur als Patch im Repository des Projekts verfügbar, das Teil der Testversionen von OpenOffice 4.1.11 ist. Updates für den stabilen Branch wurden bislang nicht bereitgestellt.

Das Problem entstand, weil OpenOffice bei der Speicherzuweisung auf die Werte von fieldLength und fieldType im Header von DBF-Dateien vertraute, ohne die Übereinstimmung mit dem tatsächlichen Datentyp in den Feldern zu überprüfen. Um einen Angriff durchzuführen, kann man den Datentyp INTEGER im Wert von fieldType angeben, jedoch größere Daten platzieren und einen fieldLength-Wert angeben, der nicht mit der Größe der Daten des Typs INTEGER übereinstimmt, was dazu führt, dass das Datenende aus dem Feld über den zugewiesenen Puffer hinausgeschrieben wird. Infolgedessen gelang es dem Forscher, den Rückgabepointer der Funktion zu überschreiben und durch Techniken der Rückgabepunktorientierten Programmierung (ROP - Return-Oriented Programming) die Ausführung eigenen Codes zu erreichen.

Bei der Verwendung der ROP-Technik versucht der Angreifer nicht, seinen Code im Speicher abzulegen, sondern arbeitet mit bereits vorhandenen Maschineninstruktionsfragmenten in den geladenen Bibliotheken, die mit einer Rücksprung-Anweisung enden (in der Regel das Ende von Bibliotheksfunktionen). Die Funktionsweise des Exploits besteht darin, eine Kette von Aufrufen solcher Blöcke ("Gadgets") zu erstellen, um die gewünschte Funktionalität zu erreichen. Für den Exploit von OpenOffice wurde Code aus der in OpenOffice verwendeten Bibliothek libxml2 genutzt, die im Gegensatz zu OpenOffice ohne Schutzmechanismen wie DEP (Data Execution Prevention) und ASLR (Address Space Layout Randomization) kompiliert wurde.

Die Entwickler von OpenOffice wurden am 4. Mai über das Problem informiert, daraufhin wurde eine öffentliche Offenlegung der Schwachstelle für den 30. August angesetzt. Da bis zu diesem Termin das Update des stabilen Branches nicht bereitgestellt werden konnte, verschob der Forscher die Offenlegung der Details auf den 18. September. Allerdings konnten die Entwickler von OpenOffice auch bis zu diesem Datum kein Release 4.1.11 fertigstellen. Bemerkenswert ist, dass im Zuge derselben Forschung eine ähnliche Schwachstelle im DBF-Format-Code von Microsoft Office Access (CVE-2021–38646) entdeckt wurde, deren Details später bekannt gegeben werden. In LibreOffice wurden keine Probleme gefunden.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster