Kwetsbaarheden in UEFI-firmware gebaseerd op het InsydeH2O-framework, waardoor code-uitvoering op SMM-niveau mogelijk is

In het InsydeH2O-framework, dat door veel fabrikanten wordt gebruikt om UEFI-firmware voor hun apparatuur te maken (de meest voorkomende implementatie van UEFI BIOS), zijn 23 kwetsbaarheden geïdentificeerd waardoor code kan worden uitgevoerd op SMM-niveau (System Management Mode), dat een hogere prioriteit (Ring -2) dan de hypervisormodus en een nulring van bescherming, en onbeperkte toegang tot al het geheugen. Het probleem heeft betrekking op UEFI-firmware die wordt gebruikt door fabrikanten zoals Fujitsu, Siemens, Dell, HP, HPE, Lenovo, Microsoft, Intel en Bull Atos.

Voor het exploiteren van kwetsbaarheden is lokale toegang met beheerdersrechten vereist, wat de problemen populair maakt als tweederangskwetsbaarheden, die worden gebruikt na exploitatie van andere kwetsbaarheden in het systeem of het gebruik van social engineering-methoden. Met toegang op SMM-niveau kunt u code uitvoeren op een niveau dat niet wordt beheerd door het besturingssysteem, wat kan worden gebruikt om de firmware te wijzigen en verborgen kwaadaardige code of rootkits in de SPI Flash achter te laten die niet door het besturingssysteem worden gedetecteerd, evenals om verificatie tijdens de opstartfase uit te schakelen (UEFI Secure Boot, Intel BootGuard) en aanvallen op hypervisors om mechanismen voor het controleren van de integriteit van virtuele omgevingen te omzeilen.

Kwetsbaarheden in UEFI-firmware gebaseerd op het InsydeH2O-framework, waardoor code-uitvoering op SMM-niveau mogelijk is

Exploitatie van kwetsbaarheden kan worden uitgevoerd vanuit het besturingssysteem met behulp van niet-geverifieerde SMI-handlers (System Management Interrupt), maar ook in de pre-uitvoeringsfase van het besturingssysteem tijdens de beginfase van het opstarten of het terugkeren uit de slaapmodus. Alle kwetsbaarheden worden veroorzaakt door geheugenproblemen en zijn onderverdeeld in drie categorieën:

  • SMM Callout - uitvoering van uw code met SMM-rechten door de uitvoering van SWSMI-interrupt-handlers om te leiden naar code buiten SMRAM;
  • Geheugencorruptie waardoor een aanvaller zijn gegevens naar SMRAM kan schrijven, een speciaal geïsoleerd geheugengebied waarin code wordt uitgevoerd met SMM-rechten.
  • Geheugenbeschadiging in code die wordt uitgevoerd op DXE-niveau (Driver eXecution Environment).

Om de principes van het organiseren van een aanval te demonstreren, is een voorbeeld van een exploit gepubliceerd, waarmee u via een aanval vanuit de derde of nulring van bescherming toegang kunt krijgen tot de DXE Runtime UEFI en uw code kunt uitvoeren. De exploit manipuleert een stack-overflow (CVE-2021-42059) in het UEFI DXE-stuurprogramma. Tijdens de aanval kan de aanvaller zijn code in de DXE-driver plaatsen, die actief blijft nadat het besturingssysteem opnieuw is opgestart, of wijzigingen aanbrengen in het NVRAM-gebied van de SPI Flash. Tijdens de uitvoering kan de code van de aanvaller wijzigingen aanbrengen in geprivilegieerde geheugengebieden, EFI Runtime-services wijzigen en het opstartproces beïnvloeden.

Bron: opennet.ru

Voeg een reactie