Sårbarhet i BMC-styrenhetens firmware som påverkar servrar från många tillverkare

Eclypsium Company avslöjat två sårbarheter i den fasta programvaran för BMC-styrenheten som tillhandahålls i Lenovo ThinkServer-servrar, vilket gör att en lokal användare kan ändra den fasta programvaran eller exekvera godtycklig kod på BMC-kretsens sida.

Ytterligare analys visade att dessa problem även påverkar firmwaren för BMC-kontroller som används i Gigabyte Enterprise Servers serverplattformar, som även används i servrar från företag som Acer, AMAX, Bigtera, Ciara, Penguin Computing och sysGen. De problematiska BMC-kontrollerna använde sårbar MergePoint EMS-firmware utvecklad av tredjepartsleverantören Avocent (nu en division av Vertiv).

Den första sårbarheten orsakas av bristen på kryptografisk verifiering av nedladdade firmwareuppdateringar (endast CRC32 checksumverifiering används, tvärtom rekommendationer NIST använder digitala signaturer), vilket gör att en angripare med lokal åtkomst till systemet kan förfalska BMC-firmware. Problemet kan till exempel användas för att djupintegrera ett rootkit som förblir aktivt efter ominstallation av operativsystemet och blockerar ytterligare firmwareuppdateringar (för att eliminera rootkit måste du använda en programmerare för att skriva om SPI-flashen).

Den andra sårbarheten finns i firmwareuppdateringskoden och låter dig ersätta dina egna kommandon, som kommer att köras i BMC med den högsta nivån av privilegier. För att attackera räcker det med att ändra värdet på parametern RemoteFirmwareImageFilePath i konfigurationsfilen bmcfwu.cfg, genom vilken sökvägen till bilden av den uppdaterade firmwaren bestäms. Under nästa uppdatering, som kan initieras av ett kommando i IPMI, kommer denna parameter att bearbetas av BMC och användas som en del av popen()-anropet som en del av raden för /bin/sh. Eftersom raden för att generera skalkommandot skapas med anropet snprintf() utan korrekt rengöring av specialtecken, kan angripare ersätta sin kod för exekvering. För att utnyttja sårbarheten måste du ha rättigheter som gör att du kan skicka ett kommando till BMC-styrenheten via IPMI (om du har administratörsrättigheter på servern kan du skicka ett IPMI-kommando utan ytterligare autentisering).

Gigabyte och Lenovo underrättades om problemen redan i juli 2018 och lyckades släppa uppdateringar innan informationen offentliggjordes. Lenovo företag släppte firmware-uppdateringar den 15 november 2018 för ThinkServer RD340, TD340, RD440, RD540 och RD640-servrarna, men eliminerade bara en sårbarhet i dem som tillåter kommandosubstitution, eftersom firmware under skapandet av en rad servrar baserad på MergePoint EMS 2014 verifiering utfördes med hjälp av en digital signatur var ännu inte utbredd och tillkännagavs inte från början.

Den 8 maj i år släppte Gigabyte firmwareuppdateringar för moderkort med ASPEED AST2500-kontrollern, men precis som Lenovo åtgärdade det bara sårbarheten för kommandoersättning. Sårbara kort baserade på ASPEED AST2400 förblir utan uppdateringar för närvarande. Gigabyte också sade om övergången till att använda MegaRAC SP-X firmware från AMI. Inklusive ny firmware baserad på MegaRAC SP-X kommer att erbjudas för system som tidigare levererats med MergePoint EMS firmware. Beslutet följer på Vertivs tillkännagivande att de inte längre kommer att stödja MergePoint EMS-plattformen. Samtidigt har ännu ingenting rapporterats om firmware-uppdateringar på servrar tillverkade av Acer, AMAX, Bigtera, Ciara, Penguin Computing och sysGen baserade på Gigabyte-kort och utrustade med sårbar MergePoint EMS-firmware.

Låt oss komma ihåg att BMC är en specialiserad styrenhet installerad i servrar, som har sina egna CPU-, minnes-, lagrings- och sensorpollinggränssnitt, vilket ger ett lågnivågränssnitt för övervakning och hantering av serverutrustning. Genom att använda BMC, oavsett vilket operativsystem som körs på servern, kan du övervaka sensorernas status, hantera ström, firmware och diskar, organisera fjärrstart över nätverket, säkerställa driften av en fjärråtkomstkonsol, etc.

Källa: opennet.ru

Lägg en kommentar