In UEFI-firmware op basis van het open platform TianoCore EDK2, die doorgaans worden gebruikt op serversystemen, zijn 9 kwetsbaarheden ontdekt, die samen de codenaam PixieFAIL hebben gekregen. De kwetsbaarheden zijn aanwezig in de netwerkstack van de firmware die wordt toegepast voor netwerkboot (PXE). De gevaarlijkste kwetsbaarheden stellen een niet-geauthenticeerde aanvaller in staat om de uitvoering van zijn code op firmware-niveau op systemen mogelijk te maken die PXE-boot via het IPv6-netwerk toestaan.
Minder gevaarlijke problemen leiden tot een denial of service (onderbreking van de boot), informatielekken, DNS-cachevervuiling en onderschepping van TCP-sessies. Het grootste deel van de kwetsbaarheden kan vanuit het lokale netwerk worden misbruikt, maar enkele kwetsbaarheden staan ook aanvallen vanuit het externe netwerk toe. Een typische aanvalsscenario houdt in dat het verkeer in het lokale netwerk wordt gemonitord en speciaal opgestelde pakketten worden verzonden bij het detecteren van activiteiten die verband houden met het opstarten van een systeem via PXE. Toegang tot server de boot- of DHCP-server is niet vereist. Ter demonstratie van de aanvalstechniek zijn prototypes van exploits gepubliceerd.
UEFI-firmware op basis van het TianoCore EDK2-platform wordt gebruikt door veel grote bedrijven, cloudproviders, datacenters en compute-clusters. In het bijzonder wordt de kwetsbare module NetworkPkg met PXE-bootimplementatie gebruikt in firmware ontwikkeld door bedrijven zoals ARM, Insyde Software (Insyde H20 UEFI BIOS), American Megatrends (AMI Aptio OpenEdition), Phoenix Technologies (SecureCore), Intel, Dell en Microsoft (Project Mu). Het werd verondersteld dat de kwetsbaarheden ook de ChromeOS-platform aangrepen, waarvan de repository een EDK2-pakket bevat, maar Google heeft verklaard dat dit pakket niet wordt gebruikt in de firmware voor Chromebook-apparaten en dat het ChromeOS-platform niet kwetsbaar is.
Geïdentificeerde kwetsbaarheden:
- CVE-2023-45230 - bufferoverloop in de DHCPv6-clientcode, misbruikt door het verzenden van een te lange identificatie de server (Server ID optie).
- CVE-2023-45234 - bufferoverloop bij het verwerken van opties met DNS-serverparameters die in het bericht worden verzonden dat de aanwezigheid van een DHCPv6-server aankondigt.
- CVE-2023-45235 - bufferoverloop bij het verwerken van de optie met serveridentificatie (Server ID) in berichten met aankondigingen van de proxyserver voor DHCPv6.
- CVE-2023-45229 - gehele getallen overloop via ondergrens (underflow), die zich manifesteert bij het verwerken van opties IA_NA/IA_TA in DHCPv6-berichten die de DHCP-server aankondigen.
- CVE-2023-45231 — gegevenslek buiten buffer tijdens verwerking van ND Redirect (Neighbor Discovery) berichten met afgesneden optiewaarden.
- CVE-2023-45232 — oneindige loop bij het parseren van onbekende opties in de kop met bestemmingsparameters (Destination Options).
- CVE-2023-45233 — oneindige loop bij het parseren van de PadN-optie in de pakketkop.
- CVE-2023-45236 — gebruik van voorspelbare beginvolgennummers voor TCP, waardoor inbreuk mogelijk is op de TCP-verbinding.
- CVE-2023-45237 — gebruik van een onbetrouwbare pseudo-random getallengenerator die voorspelbare waarden oplevert.
Informatie over kwetsbaarheden werd op 3 augustus 2023 naar CERT/CC verzonden, en de datum van openbaarmaking was gepland voor 2 november. Vanwege de noodzaak voor een gecoördineerde uitgave van patches, die verschillende leveranciers betreft, is de publicatiedatum echter begin verplaatst naar 1 december, vervolgens naar 12 december en 19 december 2023, maar uiteindelijk is het op 16 januari 2024 openbaar gemaakt. Microsoft had gevraagd de openbaarmaking tot mei uit te stellen.
Bron: opennet.ru
