Kwetsbaarheid in de firmware van de BMC-controller die van invloed is op servers van veel fabrikanten

Eclypsium-bedrijf onthuld twee kwetsbaarheden in de firmware van de BMC-controller die wordt geleverd in Lenovo ThinkServer-servers, waardoor een lokale gebruiker de firmware kan wijzigen of willekeurige code kan uitvoeren op de BMC-chipzijde.

Uit verdere analyse bleek dat deze problemen ook gevolgen hebben voor de firmware van BMC-controllers die worden gebruikt in serverplatforms van Gigabyte Enterprise Servers, die ook worden gebruikt in servers van bedrijven als Acer, AMAX, Bigtera, Ciara, Penguin Computing en sysGen. De problematische BMC-controllers gebruikten kwetsbare MergePoint EMS-firmware ontwikkeld door externe leverancier Avocent (nu een divisie van Vertiv).

De eerste kwetsbaarheid wordt veroorzaakt door het ontbreken van cryptografische verificatie van gedownloade firmware-updates (er wordt alleen gebruik gemaakt van CRC32 checksum-verificatie, in tegenstelling tot aanbevelingen NIST gebruikt digitale handtekeningen), waardoor een aanvaller met lokale toegang tot het systeem de BMC-firmware kan vervalsen. Het probleem kan bijvoorbeeld worden gebruikt om een ​​rootkit diepgaand te integreren die actief blijft na het opnieuw installeren van het besturingssysteem en verdere firmware-updates blokkeert (om de rootkit te elimineren, moet je een programmeur gebruiken om de SPI-flash te herschrijven).

De tweede kwetsbaarheid is aanwezig in de firmware-updatecode en stelt u in staat uw eigen opdrachten te vervangen, die worden uitgevoerd in de BMC met het hoogste privilegeniveau. Om aan te vallen volstaat het om de waarde van de parameter RemoteFirmwareImageFilePath in het configuratiebestand bmcfwu.cfg te wijzigen, waarmee het pad naar de afbeelding van de bijgewerkte firmware wordt bepaald. Tijdens de volgende update, die kan worden geïnitieerd door een commando in IPMI, zal deze parameter worden verwerkt door de BMC en worden gebruikt als onderdeel van de popen()-aanroep als onderdeel van de regel voor /bin/sh. Omdat de regel voor het genereren van de shell-opdracht wordt gemaakt met behulp van de snprintf()-aanroep zonder de juiste opschoning van speciale tekens, kunnen aanvallers hun code vervangen voor uitvoering. Om de kwetsbaarheid te misbruiken, moet u over rechten beschikken waarmee u via IPMI een opdracht naar de BMC-controller kunt sturen (als u beheerdersrechten op de server heeft, kunt u zonder aanvullende authenticatie een IPMI-opdracht verzenden).

Gigabyte en Lenovo werden in juli 2018 op de hoogte gebracht van de problemen en slaagden erin updates vrij te geven voordat de informatie openbaar werd gemaakt. Lenovo-bedrijf vrijgegeven firmware-updates op 15 november 2018 voor de ThinkServer RD340-, TD340-, RD440-, RD540- en RD640-servers, maar elimineerden alleen een kwetsbaarheid daarin die opdrachtvervanging mogelijk maakte, aangezien tijdens de creatie van een reeks servers op basis van MergePoint EMS in 2014 firmware verificatie met behulp van een digitale handtekening was nog niet wijdverspreid en werd aanvankelijk niet aangekondigd.

Op 8 mei van dit jaar bracht Gigabyte firmware-updates uit voor moederborden met de ASPEED AST2500-controller, maar net als Lenovo loste het alleen de kwetsbaarheid voor opdrachtvervanging op. Kwetsbare borden op basis van ASPEED AST2400 blijven voorlopig zonder updates. Gigabyte ook zei over de overstap naar het gebruik van MegaRAC SP-X-firmware van AMI. Inclusief nieuwe firmware op basis van MegaRAC SP-X wordt aangeboden voor systemen die eerder werden geleverd met MergePoint EMS-firmware. Het besluit volgt op de aankondiging van Vertiv dat het het MergePoint EMS-platform niet langer zal ondersteunen. Tegelijkertijd is er nog niets gemeld over firmware-updates op servers van Acer, AMAX, Bigtera, Ciara, Penguin Computing en sysGen op basis van Gigabyte-borden en uitgerust met kwetsbare MergePoint EMS-firmware.

Laten we niet vergeten dat BMC een gespecialiseerde controller is die in servers is geïnstalleerd en die zijn eigen CPU-, geheugen-, opslag- en sensorpoling-interfaces heeft, die een interface op laag niveau biedt voor het monitoren en beheren van serverapparatuur. Met behulp van BMC kunt u, ongeacht het besturingssysteem dat op de server draait, de status van sensoren controleren, stroom, firmware en schijven beheren, op afstand opstarten via het netwerk organiseren, de werking van een console voor externe toegang garanderen, enz.

Bron: opennet.ru

Voeg een reactie