Kwetsbaarheid in OpenOffice waardoor code kan worden uitgevoerd bij het openen van een bestand

Er is een kwetsbaarheid (CVE-2021-33035) ontdekt in het Apache OpenOffice-kantoorpakket, waardoor code kan worden uitgevoerd bij het openen van een speciaal geprepareerd DBF-bestand. De onderzoeker die het probleem ontdekte, heeft gewaarschuwd voor het creëren van een werkende exploit voor het platform. WindowsDe oplossing voor het beveiligingslek is momenteel alleen beschikbaar als patch in de projectrepository, die was opgenomen in de testversies van OpenOffice 4.1.11. Er is nog geen update uitgebracht voor de stabiele versie.

Het probleem wordt veroorzaakt doordat OpenOffice vertrouwt op de fieldLength- en fieldType-waarden in de header van de DBF-bestanden om geheugen toe te wijzen, zonder te controleren of het daadwerkelijke gegevenstype in de velden overeenkomt. Om een ​​aanval uit te voeren, kunt u een INTEGER-type opgeven in de fieldType-waarde, maar grotere gegevens plaatsen en een fieldLength-waarde opgeven die niet overeenkomt met de grootte van de gegevens met het INTEGER-type, wat zal leiden tot de staart van de gegevens vanuit het veld dat buiten de toegewezen buffer wordt geschreven. Als resultaat van een gecontroleerde bufferoverflow kon de onderzoeker de return-pointer van de functie opnieuw definiëren en, met behulp van return-georiënteerde programmeertechnieken (ROP - Return-Oriented Programming), de uitvoering van zijn code bewerkstelligen.

Bij gebruik van de ROP-techniek probeert de aanvaller zijn code niet in het geheugen te plaatsen, maar werkt hij op basis van machine-instructies die al beschikbaar zijn in geladen bibliotheken, eindigend met een control return-instructie (in de regel zijn dit de uiteinden van bibliotheekfuncties) . Het werk van de exploit komt neer op het bouwen van een keten van oproepen naar soortgelijke blokken (“gadgets”) om de gewenste functionaliteit te verkrijgen. De gadgets die bij de OpenOffice-exploit werden gebruikt, waren code uit de libxml2-bibliotheek die in OpenOffice werd gebruikt en die, in tegenstelling tot OpenOffice zelf, was gecompileerd zonder de DEP (Data Execution Prevention) en ASLR (Address Space Layout Randomization) beschermingsmechanismen.

OpenOffice-ontwikkelaars werden op 4 mei op de hoogte gebracht van het probleem, waarna een publieke bekendmaking van de kwetsbaarheid gepland was voor 30 augustus. Omdat de update naar de stabiele branch niet op de geplande datum voltooid was, stelde de onderzoeker de openbaarmaking van details uit tot 18 september, maar de OpenOffice-ontwikkelaars slaagden er niet in om voor die datum release 4.1.11 te creëren. Het is opmerkelijk dat tijdens hetzelfde onderzoek een soortgelijke kwetsbaarheid werd geïdentificeerd in de ondersteuningscode voor het DBF-formaat in Microsoft Office Access (CVE-2021–38646), waarvan de details later zullen worden bekendgemaakt. Er zijn geen problemen gevonden in LibreOffice.

Bron: opennet.ru

Koop betrouwbare hosting voor sites met DDoS-bescherming, VPS VDS-servers 🔥 Koop betrouwbare websitehosting met DDoS-bescherming, VPS- en VDS-servers | ProHoster