Vundebleco en OpenOffice kiu ebligas kodan ekzekuton dum malfermado de dosiero

Vulnerabileco (CVE-2021-33035) estis identigita en la oficeja aro de Apache OpenOffice, kiu ebligas kodan ekzekuton dum malfermado de speciale desegnita dosiero en la formato DBF. La esploristo, kiu malkovris la problemon, avertis pri kreado de funkcia ekspluato por la Vindoza platformo. La vundebleco solvo estas nuntempe nur havebla en formo de flikaĵo en la projekta deponejo, kiu estis inkluzivita en la testaj konstruoj de OpenOffice 4.1.11. Ankoraŭ ne ekzistas ĝisdatigoj por la stabila branĉo.

La problemo estas kaŭzita de OpenOffice, kiu dependas de la valoroj de fieldLength kaj fieldType en la kaplinio de la DBF-dosieroj por asigni memoron, sen kontroli, ke la reala datumtipo en la kampoj kongruas. Por efektivigi atakon, vi povas specifi INTEGER-tipo en la fieldType-valoro, sed meti pli grandajn datumojn kaj specifi fieldLength-valoron, kiu ne respondas al la grandeco de la datumoj kun la INTEGER-tipo, kiu kondukos al la vosto de la datumoj. de la kampo skribita preter la asignita bufro. Kiel rezulto de kontrolita bufrotrofluo, la esploristo povis redifini la revenmontrilon de la funkcio kaj, uzante reven-orientitajn programajn teknikojn (ROP - Return-Oriented Programming), atingi la ekzekuton de sia kodo.

Kiam oni uzas la ROP-teknikon, la atakanto ne provas meti sian kodon en memoron, sed operacias sur pecoj de maŝinaj instrukcioj jam disponeblaj en ŝarĝitaj bibliotekoj, finiĝante per kontrolo-revena instrukcio (kiel regulo, ĉi tiuj estas la finoj de bibliotekfunkcioj) . La laboro de la ekspluato konsistas en konstruado de ĉeno de alvokoj al similaj blokoj ("aparatoj") por akiri la deziratan funkciecon. La aparatoj uzitaj en la ekspluato de OpenOffice estis kodo de la libxml2 biblioteko uzita en OpenOffice, kiu, male al OpenOffice mem, estis kompilita sen la DEP (Data Execution Prevention) kaj ASLR (Address Space Layout Randomization) protektaj mekanismoj.

OpenOffice-programistoj estis sciigitaj pri la afero la 4-an de majo, post kio publika malkaŝo de la vundebleco estis planita por la 30-an de aŭgusto. Ĉar la ĝisdatigo de la stabila branĉo ne estis kompletigita antaŭ la planita dato, la esploristo prokrastis la malkaŝon de detaloj al la 18-a de septembro, sed la programistoj de OpenOffice ne sukcesis krei eldonon 4.1.11 ĝis ĉi tiu dato. Estas rimarkinde, ke dum la sama esplorado, simila vundebleco estis identigita en la subtena kodo DBF en Microsoft Office Access (CVE-2021–38646), kies detaloj estos malkaŝitaj poste. Neniuj problemoj trovitaj en LibreOffice.

fonto: opennet.ru

Aldoni komenton