Natuklasan nila ang isang kritikal na kahinaan sa Apache OpenOffice

Ilang araw na nakalipas isang kahinaan ay isiniwalat nakilala yan sa suite ng tanggapan ng Apache OpenOffice, ang bug na ito ay nakalista sa ilalim CVE-2021-33035 Pinapayagan ang pagpapatupad ng code kapag binubuksan ang isang espesyal na ginawa file sa format na DBF.

Ang problema ito ay dahil umaasa ang OpenOffice sa mga halagang fieldLength at fieldType sa header ng mga file ng DBF upang maglaan ng memorya nang hindi sinusuri ang aktwal na uri ng data sa mga patlang.

Tungkol sa kahinaan

Upang magsagawa ng isang atake, maaari mong tukuyin ang uri ng INTEGER sa halaga ng fieldType, ngunit maglagay ng mas malaking data at tukuyin ang halaga ng fieldLength na hindi tumutugma sa laki ng data ng INTEGER, na hahantong sa katotohanan na ang data ng pila ng patlang ay isusulat mula sa inilaang buffer.

Bilang isang resulta ng isang kinokontrol na overflow ng buffer, nagawang muling tukuyin ng mananaliksik ang return pointer ng pagpapaandar at paggamit ng mga diskarte sa Return Oriented Programming (ROP), nakamit ang pagpapatupad ng kanyang code.

Ang isang piraso ng payo na natanggap ko nang maaga sa paglalakbay sa pananaliksik sa kahinaan ay mag-focus sa isang format ng file, hindi isang tukoy na piraso ng software. Mayroong dalawang pangunahing bentahe ng pamamaraang ito. Una, bilang isang nagsisimula, nagkulang ka ng karanasan upang mabilis na makilala ang mga natatanging mga vector ng pag-atake sa mga indibidwal na application, habang ang pag-aaral ng format ng file ay madalas na isang pangkaraniwang punto ng pagpasok sa maraming mga application. 

Bilang karagdagan, ang mga karaniwang format ng file ay mahusay na dokumentado gamit ang Mga Kahilingan para sa Mga Komento (RFC) o bukas na source code, binabawasan ang dami ng pagsisikap na kinakailangan upang baligtarin ang inhinyero ng format..

Kapag ginagamit ang diskarteng ROP, hindi susubukan ng magsasalakay na ilagay ang kanyang code sa memorya, ngunit sa halip na tumatakbo sa mga bahagi ng mga tagubilin sa makina na magagamit na sa mga naka-load na aklatan, nagtatapos sa isang control return statement (bilang isang panuntunan, ito ang pagtatapos ng library ng mga pagpapaandar).

Ang gawain ng pagsasamantala ay bumaba sa pagbuo ng isang kadena ng mga tawag sa mga katulad na bloke ("gadget") upang makuha ang kinakailangang pagpapaandar.

Tulad ng mga gadget na pinagsamantalahan para sa OpenOffice, nabanggit na ang code mula sa libxml2 library na ginamit sa OpenOffice ay ginamit, na, hindi tulad ng OpenOffice, naka-assemble nang walang DEP (Data Execut Prevent) at ASLR (Address Space) na mga mekanismo ng proteksyon. Randomization ng Layout).

Naabisuhan ang mga developer ng OpenOffice tungkol sa problema noong Mayo 4, pagkatapos nito ang isang pampublikong pagsisiwalat ng kahinaan ay naka-iskedyul para sa Agosto 30.

Dahil ang matatag na sangay ay hindi na-update sa petsa pinlano, atIpinagpaliban ng investigator ang paglabas ng mga detalye hanggang Setyembre 18, ngunit ang mga developer ng OpenOffice ay walang oras upang bumuo ng bersyon 4.1.11 sa oras na iyon. Dapat pansinin na sa kurso ng parehong pag-aaral, isang katulad na kahinaan ay nagsiwalat sa code upang suportahan ang format ng DBF sa Microsoft Office Access (CVE-2021-38646), ang mga detalye ay isiwalat sa paglaon. Walang nahanap na mga problema sa LibreOffice.

Ang dokumentasyon ng format ng file para sa dBase ay medyo madaling tuklasin; Ang Wikipedia ay may isang simpleng paglalarawan ng bersyon 5 ng format at nagbibigay din ang dBase LLC ng na-update na detalye. Ang Library of Congress ay naglilista ng isang hindi kapani-paniwala na listahan ng mga format ng file, kasama ang DBF. Ang iba't ibang mga bersyon at extension ng format na DBF ay nagbibigay ng sapat na mga pagkakataon para sa mga programmer na ipakilala ang mga kahinaan sa pag-scan.

Ang format na DBF ay binubuo ng dalawang pangunahing seksyon: ang header at ang katawan. Nagsasama ang header ng isang unlapi na naglalarawan sa bersyon ng database ng dBase, ang huling timestamp ng pag-update, at iba pang metadata. Mas mahalaga, tinutukoy nito ang haba ng bawat tala sa database, ang haba ng istraktura ng header, ang bilang ng mga talaan, at ang mga patlang ng data sa isang talaan.

Ang mananaliksik na nakilala ang problema nagbabala tungkol sa paglikha ng isang functional exploit para sa Windows platform. Ang pag-aayos para sa kahinaan ay magagamit lamang bilang isang patch sa imbakan ng proyekto, na isinama sa OpenOffice 4.1.11 na pagsubok na nagtatayo.

Panghuli, kung interesado kang malaman ang tungkol dito, maaari kang kumunsulta sa orihinal na tala sa ang sumusunod na link.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Larawan ng placeholder ni Diego Vallejo dijo

    Ginagamit pa ba ang OpenOffice noong 2021?
    Hindi mo ba narinig na mayroong sinusuportahang LibreOffice.org?

  2.   Paul Cormier CEO Red Hat, Inc. dijo

    Mayroon bang mga tao ngayon na gumagamit ng zombie na iyon na tinatawag na openoffice?