Ranljivost v programski opremi krmilnika BMC, ki vpliva na strežnike številnih proizvajalcev

Podjetje Eclypsium razkrila dve ranljivosti v vdelani programski opremi krmilnika BMC, dobavljene v strežnikih Lenovo ThinkServer, ki lokalnemu uporabniku omogočata, da spremeni vdelano programsko opremo ali izvede poljubno kodo na strani čipa BMC.

Nadaljnja analiza je pokazala, da te težave vplivajo tudi na strojno programsko opremo krmilnikov BMC, ki se uporabljajo v strežniških platformah Gigabyte Enterprise Servers, ki se uporabljajo tudi v strežnikih podjetij, kot so Acer, AMAX, Bigtera, Ciara, Penguin Computing in sysGen. Problematični krmilniki BMC so uporabljali ranljivo strojno programsko opremo MergePoint EMS, ki jo je razvil neodvisni prodajalec Avocent (zdaj oddelek Vertiv).

Prva ranljivost je posledica pomanjkanja kriptografskega preverjanja prenesenih posodobitev vdelane programske opreme (uporablja se samo preverjanje kontrolne vsote CRC32, nasprotno Priporočila NIST uporablja digitalne podpise), kar napadalcu z lokalnim dostopom do sistema omogoča, da ponaredi strojno programsko opremo BMC. Težavo je na primer mogoče uporabiti za globoko integracijo rootkita, ki ostane aktiven po ponovni namestitvi operacijskega sistema in blokira nadaljnje posodobitve vdelane programske opreme (če želite odstraniti rootkit, boste morali s programatorjem prepisati bliskavico SPI).

Druga ranljivost je prisotna v kodi za posodobitev vdelane programske opreme in vam omogoča zamenjavo lastnih ukazov, ki se bodo izvajali v BMC z najvišjo stopnjo privilegijev. Za napad je dovolj, da spremenite vrednost parametra RemoteFirmwareImageFilePath v konfiguracijski datoteki bmcfwu.cfg, prek katere se določi pot do slike posodobljene vdelane programske opreme. Med naslednjo posodobitvijo, ki jo lahko sproži ukaz v IPMI, bo BMC obdelal ta parameter in ga uporabil kot del klica popen() kot del vrstice za /bin/sh. Ker je vrstica za generiranje lupinskega ukaza ustvarjena s klicem snprintf() brez ustreznega čiščenja posebnih znakov, lahko napadalci zamenjajo svojo kodo za izvajanje. Če želite izkoristiti ranljivost, morate imeti pravice, ki vam omogočajo pošiljanje ukaza krmilniku BMC prek IPMI (če imate skrbniške pravice na strežniku, lahko pošljete ukaz IPMI brez dodatne avtentikacije).

Gigabyte in Lenovo sta bila o težavah obveščena že julija 2018 in jima je uspelo izdati posodobitve, preden so bile informacije javno razkrite. Podjetje Lenovo izpuščen posodobitve vdelane programske opreme 15. novembra 2018 za strežnike ThinkServer RD340, TD340, RD440, RD540 in RD640, odpravili pa so le ranljivost v njih, ki omogoča zamenjavo ukazov, saj je med ustvarjanjem linije strežnikov na osnovi MergePoint EMS leta 2014 vdelana programska oprema preverjanje z digitalnim podpisom še ni bilo razširjeno in sprva ni bilo napovedano.

8. maja letos je Gigabyte izdal posodobitve vdelane programske opreme za matične plošče s krmilnikom ASPEED AST2500, vendar je tako kot Lenovo odpravil le ranljivost zamenjave ukazov. Ranljive plošče, ki temeljijo na ASPEED AST2400, za zdaj ostajajo brez posodobitev. Gigabajt tudi je dejal o prehodu na uporabo vdelane programske opreme MegaRAC SP-X podjetja AMI. Vključno z novo vdelano programsko opremo, ki temelji na MegaRAC SP-X, bo na voljo za sisteme, ki so bili prej dobavljeni z vdelano programsko opremo MergePoint EMS. Odločitev sledi Vertivovi napovedi, da ne bo več podpiral platforme MergePoint EMS. Hkrati še ni bilo poročil o posodobitvah vdelane programske opreme na strežnikih proizvajalcev Acer, AMAX, Bigtera, Ciara, Penguin Computing in sysGen, ki temeljijo na ploščah Gigabyte in so opremljeni z ranljivo vdelano programsko opremo MergePoint EMS.

Naj spomnimo, da je BMC specializiran krmilnik, nameščen v strežnikih, ki ima lasten CPU, pomnilnik, pomnilnik in vmesnike za anketiranje senzorjev, ki zagotavlja nizkonivojski vmesnik za spremljanje in upravljanje strežniške opreme. Z uporabo BMC lahko ne glede na operacijski sistem, ki se izvaja na strežniku, spremljate stanje senzorjev, upravljate napajanje, vdelano programsko opremo in diske, organizirate oddaljeni zagon prek omrežja, zagotovite delovanje konzole za oddaljeni dostop itd.

Vir: opennet.ru

Dodaj komentar