A BMC-vezérlő firmware-jének sebezhetősége számos gyártó szerverét érinti

Eclypsium Társaság kiderült két sérülékenység a Lenovo ThinkServer szervereken szállított BMC-vezérlő firmware-ében, amelyek lehetővé teszik a helyi felhasználók számára, hogy módosítsák a firmware-t vagy tetszőleges kódot hajtsanak végre a BMC chip oldalán.

A további elemzések kimutatták, hogy ezek a problémák a Gigabyte Enterprise Servers szerverplatformokon használt BMC-vezérlők firmware-ét is érintik, amelyeket olyan cégek szerverein is használnak, mint az Acer, az AMAX, a Bigtera, a Ciara, a Penguin Computing és a sysGen. A problémás BMC-vezérlők sebezhető MergePoint EMS firmware-t használtak, amelyet a harmadik féltől származó Avocent (ma a Vertiv részlege) fejlesztett ki.

Az első biztonsági rést a letöltött firmware-frissítések kriptográfiai ellenőrzésének hiánya okozza (csak a CRC32 ellenőrzőösszeg-ellenőrzést használják, ellenkezőleg ajánlások A NIST digitális aláírásokat használ), ami lehetővé teszi a rendszerhez helyi hozzáféréssel rendelkező támadók számára, hogy meghamisítsák a BMC firmware-t. A probléma például felhasználható egy olyan rootkit mélyre integrálására, amely az operációs rendszer újratelepítése után is aktív marad, és blokkolja a további firmware-frissítéseket (a rootkit eltávolításához programozót kell használnia az SPI flash újraírásához).

A második sebezhetőség a firmware-frissítési kódban található, és lehetővé teszi saját parancsok helyettesítését, amelyek a BMC-ben a legmagasabb szintű jogosultságokkal kerülnek végrehajtásra. A támadáshoz elég megváltoztatni a RemoteFirmwareImageFilePath paraméter értékét a bmcfwu.cfg konfigurációs fájlban, amelyen keresztül meghatározzák a frissített firmware képének elérési útját. A következő frissítés során, amelyet az IPMI paranccsal lehet elindítani, ezt a paramétert a BMC feldolgozza, és a popen() hívás részeként használja a /bin/sh sor részeként. Mivel a shell parancs létrehozására szolgáló sor az snprintf() hívás segítségével jön létre a speciális karakterek megfelelő tisztítása nélkül, a támadók lecserélhetik a kódjukat a végrehajtásra. A sérülékenység kihasználásához olyan jogosultságokkal kell rendelkeznie, amelyek lehetővé teszik, hogy IPMI-n keresztül parancsot küldjön a BMC-vezérlőnek (ha rendelkezik rendszergazdai jogokkal a kiszolgálón, további hitelesítés nélkül küldhet IPMI-parancsot).

A Gigabyte-ot és a Lenovót még 2018 júliusában értesítették a problémákról, és sikerült frissítéseket kiadniuk, mielőtt az információkat nyilvánosságra hozták volna. Lenovo cég megjelent 15. november 2018-én firmware-frissítések történtek a ThinkServer RD340, TD340, RD440, RD540 és RD640 szerverekhez, de csak a parancshelyettesítést lehetővé tévő sebezhetőséget szüntették meg bennük, mivel a MergePoint EMS alapú szerversor 2014-es létrehozása során a firmware A digitális aláírással történő ellenőrzés még nem volt elterjedt, és kezdetben nem jelentették be.

Idén május 8-án a Gigabyte firmware-frissítéseket adott ki az ASPEED AST2500 vezérlővel ellátott alaplapokhoz, de a Lenovohoz hasonlóan csak a parancshelyettesítő sérülékenységet javította ki. Az ASPEED AST2400 alapú sebezhető kártyák egyelőre frissítés nélkül maradnak. Gigabyte is mondott az AMI MegaRAC SP-X firmware használatára való átállásról. A korábban MergePoint EMS firmware-rel szállított rendszerekhez a MegaRAC SP-X alapú új firmware is elérhető lesz. A döntés a Vertiv bejelentése nyomán született, miszerint a továbbiakban nem támogatja a MergePoint EMS platformot. Ugyanakkor még nem érkezett hír az Acer, AMAX, Bigtera, Ciara, Penguin Computing és sysGen által gyártott, Gigabyte kártyákra épülő és sebezhető MergePoint EMS firmware-rel felszerelt szerverek firmware-frissítéseiről.

Emlékezzünk vissza, hogy a BMC egy szerverekbe telepített speciális vezérlő, amely saját CPU-val, memóriával, tárolóval és szenzoros lekérdezési interfésszel rendelkezik, amely alacsony szintű interfészt biztosít a szerverberendezések felügyeletéhez és kezeléséhez. A BMC segítségével a szerveren futó operációs rendszertől függetlenül figyelemmel kísérheti az érzékelők állapotát, kezelheti a tápellátást, a firmware-t és a lemezeket, megszervezheti a távoli rendszerindítást a hálózaton keresztül, biztosíthatja a távoli elérési konzol működését stb.

Forrás: opennet.ru

Hozzászólás