OpenOfficen haavoittuvuus, joka sallii koodin suorittamisen tiedostoa avattaessa

Apache OpenOffice -toimistopaketista on tunnistettu haavoittuvuus (CVE-2021-33035), joka sallii koodin suorittamisen, kun avataan erityisesti suunniteltu DBF-muodossa oleva tiedosto. Ongelman löytänyt tutkija varoitti toimivan hyväksikäytön luomisesta Windows-alustalle. Haavoittuvuuden korjaus on tällä hetkellä saatavilla vain korjaustiedoston muodossa projektivarastosta, joka sisältyi OpenOffice 4.1.11:n testiversioihin. Vakaalle haaralle ei ole vielä päivityksiä.

Ongelma johtuu siitä, että OpenOffice luottaa DBF-tiedostojen otsikon fieldLength- ja fieldType-arvoihin varaamaan muistia tarkistamatta, että kenttien todellinen tietotyyppi täsmää. Hyökkäyksen suorittamiseksi voit määrittää fieldType-arvoon INTEGER-tyypin, mutta sijoittaa suurempia tietoja ja määrittää kentän pituus, joka ei vastaa tietojen kokoa INTEGER-tyypillä, mikä johtaa tietojen häntään. kentästä, jota kirjoitetaan varatun puskurin ulkopuolelle. Hallitun puskurin ylivuodon seurauksena tutkija pystyi määrittelemään uudelleen funktion paluuosoittimen ja käyttämällä paluusuuntautuneita ohjelmointitekniikoita (ROP - Return-Oriented Programming) saavuttamaan koodinsa suorittamisen.

ROP-tekniikkaa käytettäessä hyökkääjä ei yritä sijoittaa koodiaan muistiin, vaan toimii jo ladatuissa kirjastoissa olevilla konekäskypaloilla, jotka päättyvät ohjauksen paluukäskyyn (yleensä nämä ovat kirjastotoimintojen päät) . Hyödyntämisen tehtävänä on rakentaa kutsuketju samankaltaisille lohkoille ("gadgeteille") halutun toiminnallisuuden saavuttamiseksi. OpenOfficen hyväksikäytössä käytetyt gadgetit olivat koodia OpenOfficessa käytetystä libxml2-kirjastosta, joka, toisin kuin itse OpenOffice, on käännetty ilman DEP- (Data Execution Prevention)- ja ASLR-suojausmekanismeja (Address Space Layout Randomization).

OpenOffice-kehittäjille ilmoitettiin ongelmasta 4. toukokuuta, minkä jälkeen haavoittuvuus julkistettiin 30. elokuuta. Koska vakaan haaran päivitys ei valmistunut sovittuun päivämäärään mennessä, tutkija siirsi yksityiskohtien julkistamisen syyskuun 18. päivään, mutta OpenOffice-kehittäjät eivät onnistuneet luomaan julkaisua 4.1.11 tähän päivämäärään mennessä. On huomionarvoista, että saman tutkimuksen aikana havaittiin vastaava haavoittuvuus Microsoft Office Accessin (CVE-2021-38646) DBF-muodon tukikoodissa, jonka yksityiskohdat paljastetaan myöhemmin. LibreOfficesta ei löytynyt ongelmia.

Lähde: opennet.ru

Lisää kommentti