PixieFAIL - luki w stosie sieciowym oprogramowania układowego UEFI używanego do rozruchu PXE

W oprogramowaniu UEFI opartym na otwartej platformie TianoCore EDK2, powszechnie stosowanej w systemach serwerowych, o wspólnej nazwie kodowej PixieFAIL, zidentyfikowano dziewięć luk w zabezpieczeniach. W stosie oprogramowania sprzętowego sieci używanego do organizowania rozruchu sieciowego (PXE) występują luki. Najniebezpieczniejsze luki pozwalają nieuwierzytelnionemu atakującemu na zdalne wykonanie kodu na poziomie oprogramowania sprzętowego w systemach, które umożliwiają uruchamianie PXE przez sieć IPv9.

Mniej poważne problemy powodują odmowę usługi (blokowanie rozruchu), wyciek informacji, zatruwanie pamięci podręcznej DNS i przejmowanie sesji TCP. Większość luk można wykorzystać z sieci lokalnej, ale niektóre luki można również zaatakować z sieci zewnętrznej. Typowy scenariusz ataku sprowadza się do monitorowania ruchu w sieci lokalnej i wysyłania specjalnie zaprojektowanych pakietów w przypadku wykrycia aktywności związanej z uruchamianiem systemu poprzez PXE. Dostęp do serwera pobierania lub serwera DHCP nie jest wymagany. Aby zademonstrować technikę ataku, opublikowano prototypowe exploity.

Oprogramowanie UEFI oparte na platformie TianoCore EDK2 znajduje zastosowanie w wielu dużych firmach, dostawcach usług chmurowych, centrach danych i klastrach obliczeniowych. W szczególności podatny na ataki moduł NetworkPkg z implementacją rozruchu PXE jest wykorzystywany w oprogramowaniu sprzętowym opracowanym przez ARM, Insyde Software (Insyde H20 UEFI BIOS), American Megatrends (AMI Aptio OpenEdition), Phoenix Technologies (SecureCore), Intel, Dell i Microsoft (Project Mu ). Uważa się, że luki dotyczą także platformy ChromeOS, która posiada w repozytorium pakiet EDK2, jednak Google stwierdziło, że pakiet ten nie jest używany w oprogramowaniu sprzętowym Chromebooków i platforma ChromeOS nie jest dotknięta problemem.

Zidentyfikowane podatności:

  • CVE-2023-45230 — Przepełnienie bufora w kodzie klienta DHCPv6, wykorzystywane przez przekazanie zbyt długiego identyfikatora serwera (opcja Server ID).
  • CVE-2023-45234 - Podczas przetwarzania opcji z parametrami serwera DNS przekazanymi w komunikacie informującym o obecności serwera DHCPv6 dochodzi do przepełnienia bufora.
  • CVE-2023-45235 — Przepełnienie bufora podczas przetwarzania opcji identyfikatora serwera w komunikatach ogłaszających serwer proxy DHCPv6.
  • CVE-2023-45229 to niedomiar liczb całkowitych występujący podczas przetwarzania opcji IA_NA/IA_TA w komunikatach DHCPv6 reklamujących serwer DHCP.
  • CVE-2023-45231 Wyciek danych poza buforem występuje podczas przetwarzania komunikatów ND Redirect (Neighbor Discovery) z obciętymi wartościami opcji.
  • CVE-2023-45232 Podczas analizowania nieznanych opcji w nagłówku opcji docelowych występuje nieskończona pętla.
  • CVE-2023-45233 Podczas analizowania opcji PadN w nagłówku pakietu występuje nieskończona pętla.
  • CVE-2023-45236 — Użycie przewidywalnych nasion sekwencji TCP w celu umożliwienia klinowania połączenia TCP.
  • CVE-2023-45237 – Użycie zawodnego generatora liczb pseudolosowych, który generuje przewidywalne wartości.

Luki zostały zgłoszone do CERT/CC 3 sierpnia 2023 roku, a termin ich ujawnienia wyznaczono na 2 listopada. Jednak ze względu na potrzebę skoordynowanego wydania łatki u wielu dostawców data premiery została początkowo przesunięta na 1 grudnia, następnie na 12 i 19 grudnia 2023 r., ale ostatecznie została ujawniona 16 stycznia 2024 r. Jednocześnie Microsoft poprosił o przesunięcie publikacji informacji na maj.

Źródło: opennet.ru

Dodaj komentarz