Forskere har opdaget seks U-Boot-sårbarheder, som kan gøre det muligt for angribere at køre skadelig kode i de allerførste faser af en enheds opstart. Sårbarhederne påvirker den udbredte open source-bootloader og kan muliggøre vedvarende firmwareangreb, før operativsystemet eller sikkerhedssoftwaren begynder at køre.

To af sårbarhederne kan føre til vilkårlig kodeeksekvering, mens de fire øvrige kan udnyttes til at få sårbare enheder til at gå ned.

Sikkerhedssårbarheder rammer opstartsprocessen

U-Boot er en af verdens mest udbredte open source-bootloadere. Den anvendes i indlejrede Linux-enheder, herunder Baseboard Management Controllers (BMC’er), netværksudstyr, industrielle systemer, IoT-enheder og virksomhedsudstyr.

Da U-Boot indlæser operativsystemet, kan angribere, der kompromitterer bootloaderen, overtage kontrollen, før operativsystemet starter. Det gør det muligt at omgå mange sikkerhedsfunktioner, som normalt først aktiveres senere i opstartsprocessen.

En vigtig sikkerhedsfunktion er Verified Boot. Denne funktion kontrollerer kryptografiske signaturer for at sikre, at kun betroet firmware og operativsystembilleder bliver indlæst.

Seks sårbarheder opdaget

Firmware-sikkerhedsforskere identificerede seks fejl i U-Boots kode til signaturverificering af Flattened Image Tree (FIT).

Ifølge forskerne kan to af sårbarhederne muliggøre vilkårlig kodeeksekvering under firmwareverificering. De fire øvrige kan udløse nedbrud ved behandling af specialudformede firmwarebilleder.

De offentliggjorte sårbarheder omfatter:

  • BRLY-2026-037: En nedbrudssårbarhed, som under visse omstændigheder kan muliggøre vilkårlig kodeeksekvering.
  • BRLY-2026-038: En hukommelseskorruptionssårbarhed, der kan føre til vilkårlig kodeeksekvering.
  • BRLY-2026-039: En out-of-bounds-læsning, som kan få sårbare enheder til at gå ned.
  • BRLY-2026-040: En null pointer dereference, der får bootloaderen til at gå ned.
  • BRLY-2026-041: Forkert validering af eksterne firmwaredata, som kan udløse nedbrud.
  • BRLY-2026-042: Ubegrænset rekursion, som udtømmer stakhukommelsen og får bootloaderen til at gå ned.

Den sårbare kode har eksisteret i årevis

Forskerne oplyser, at størstedelen af den berørte kode har været til stede siden U-Boot version 2013.07.

Som følge heraf kan U-Boot-sårbarhederne påvirke mere end 50 stabile udgivelser af projektet. Konsekvenserne omfatter også hardwareproducenter, der har integreret den sårbare kode i deres egen firmware.

Mange leverandørtilpassede versioner kan derfor forblive sårbare, indtil producenterne udsender opdateret firmware.

Firmwareangreb kan være vanskelige at opdage

Hvis angribere udnytter sårbarhederne til kodeeksekvering, kan de køre skadelig kode, før operativsystemet indlæses.

Denne tidlige adgang kan gøre det muligt at deaktivere firmwarebaserede sikkerhedsfunktioner, ændre opstartsprocessen eller installere vedvarende firmware-malware, som overlever geninstallation af operativsystemet.

Da den skadelige kode kører, før operativsystemet starter, kan disse angreb være betydeligt sværere at opdage end traditionel malware.

Fjernforbundne systemer kan også være i fare

Forskerne bemærker, at udnyttelse af U-Boot-sårbarhederne ikke altid kræver fysisk adgang.

Enheder som Baseboard Management Controllers, der understøtter fjernopdatering af firmware, kan blive angrebet, hvis en trusselsaktør først kompromitterer administrationsgrænsefladen. Angriberen kan derefter uploade et specialudformet firmwarebillede, som er designet til at udløse sårbarhederne.

Forskerne rapporterede alle seks sårbarheder til U-Boots udviklere og indsendte rettelser, som allerede er blevet accepteret i hovedprojektet.

Hardwareproducenter skal dog først integrere disse rettelser i deres egen firmware, før kunderne kan modtage opdateringerne. Ældre eller ikke længere understøttede enheder, som ikke modtager firmwareopdateringer, kan derfor forblive permanent sårbare.


0 svar til “U-Boot-sårbarheder kan muliggøre skjulte firmwareangreb før opstart”