Kritieke kwetsbaarheid van de bootloader in Shim heeft gevolgen voor bijna alle Linux-distributies

De beheerders van shim hebben versie 15.8 uitgebracht om zes beveiligingsfouten aan te pakken, waaronder een kritieke bug die onder specifieke omstandigheden de weg zou kunnen vrijmaken voor het uitvoeren van code op afstand.

Bijgehouden als CVE-2023-40547 (CVSS-score: 9,8) kan het beveiligingslek worden misbruikt om een ​​Secure Boot-bypass te bewerkstelligen. Bill Demirkapi van het Microsoft Security Response Center (MSRC) wordt gecrediteerd voor het ontdekken en rapporteren van de bug.

“De http-opstartondersteuning van de shim (httpboot.c) vertrouwt op door de aanvaller gecontroleerde waarden bij het parseren van een HTTP-antwoord, wat leidt tot een volledig gecontroleerde out-of-bounds schrijfprimitief”, merkte Alan Coopersmith van Oracle op in een bericht dat werd gedeeld op de Open Source Security-mailing lijst oss-beveiliging.

Demirkapi, in a na die eind vorige maand op X (voorheen Twitter) werd gedeeld, zei dat de kwetsbaarheid “bestaat in elke Linux-bootloader die in het afgelopen decennium is ondertekend.”

shim verwijst naar een “triviaal” softwarepakket dat is ontworpen om te werken als een eerste fase bootloader op Unified Extensible Firmware Interface (UEFI) -systemen.

Firmware-beveiligingsbedrijf Eclypsium zei dat CVE-2023-40547 “voortkomt uit de verwerking van HTTP-protocollen, wat leidt tot schrijven buiten de grenzen, wat kan leiden tot een volledig systeemcompromis.”

In een hypothetisch aanvalsscenario zou een bedreigingsacteur op hetzelfde netwerk de fout kunnen benutten om een ​​kwetsbare shim-bootloader te laden, of door een lokale tegenstander met voldoende bevoegdheden om gegevens op de EFI-partitie te manipuleren.

“Een aanvaller zou een MiTM-aanval (Man-in-the-Middle) kunnen uitvoeren en HTTP-verkeer kunnen onderscheppen tussen het slachtoffer en de HTTP-server die wordt gebruikt om bestanden aan te bieden ter ondersteuning van HTTP-boot”, voegde het bedrijf eraan toe. “De aanvaller kan zich op elk netwerksegment tussen het slachtoffer en de legitieme server bevinden.”

Dat gezegd hebbende, geeft het verkrijgen van de mogelijkheid om code uit te voeren tijdens het opstartproces (dat plaatsvindt voordat het hoofdbesturingssysteem start) de aanvaller carte blanche-toegang om heimelijke bootkits in te zetten die bijna volledige controle over de aangetaste host kunnen geven.

De vijf andere kwetsbaarheden die in shim-versie 15.8 zijn opgelost, staan ​​hieronder:

  • CVE-2023-40546 (CVSS-score: 5,3) – Out-of-bounds gelezen bij het afdrukken van foutmeldingen, resulterend in een denial-of-service (DoS)-toestand
  • CVE-2023-40548 (CVSS-score: 7,4) – Bufferoverloop in shim wanneer deze wordt gecompileerd voor 32-bits processors, wat kan leiden tot een crash of problemen met de gegevensintegriteit tijdens de opstartfase
  • CVE-2023-40549 (CVSS-score: 5,5) – Out-of-bounds gelezen in de authenticode-functie waardoor een aanvaller een DoS kan activeren door een verkeerd ingedeeld binair bestand aan te bieden
  • CVE-2023-40550 (CVSS-score: 5,5) – Buiten bereik gelezen bij het valideren van Secure Boot Advanced Targeting (SBAT)-informatie die zou kunnen resulteren in het vrijgeven van informatie
  • CVE-2023-40551 (CVSS-score: 7,1) – Buiten de grenzen gelezen bij het parseren van MZ-binaire bestanden, wat leidt tot een crash of mogelijke blootstelling van gevoelige gegevens

“Een aanvaller die deze kwetsbaarheid misbruikt, krijgt controle over het systeem voordat de kernel wordt geladen, wat betekent dat hij bevoorrechte toegang heeft en de mogelijkheid heeft om alle controles die door de kernel en het besturingssysteem zijn geïmplementeerd te omzeilen”, aldus Eclypsium.

Thijs Van der Does