Vundeblecoj en UEFI-firmvaro bazita sur la InsydeH2O-kadro, permesante kodekzekuton sur la SMM-nivelo

En la kadro InsydeH2O, uzata de multaj fabrikantoj por krei UEFI-firmvaro por sia ekipaĵo (la plej ofta efektivigo de UEFI BIOS), 23 vundeblecoj estis identigitaj, kiuj permesas kodon esti efektivigita ĉe la SMM (System Management Mode) nivelo, kiu havas pli alta prioritato (Ring -2) ol la hipervizora reĝimo kaj nula ringo de protekto, kaj havanta senliman aliron al ĉiu memoro. La problemo influas UEFI-firmaron uzatan de fabrikantoj kiel Fujitsu, Siemens, Dell, HP, HPE, Lenovo, Microsoft, Intel kaj Bull Atos.

Ekspluato de vundeblecoj postulas lokan aliron kun administranto-rajtoj, kio igas la temojn popularaj kiel duanivelaj vundeblecoj, uzataj post ekspluato de aliaj vundeblecoj en la sistemo aŭ la uzo de sociaj inĝenieraj metodoj. Aliro ĉe la SMM-nivelo permesas al vi ekzekuti kodon je nivelo ne kontrolita de la operaciumo, kiu povas esti uzata por modifi firmvaron kaj lasi kaŝitan malican kodon aŭ radiketojn en la SPI Flash, kiuj ne estas detektitaj de la operaciumo, same kiel por malŝalti konfirmon ĉe la startstadio (UEFI Secure Boot, Intel BootGuard) kaj atakojn kontraŭ hiperviziiloj por preteriri mekanismojn por kontroli la integrecon de virtualaj medioj.

Vundeblecoj en UEFI-firmvaro bazita sur la InsydeH2O-kadro, permesante kodekzekuton sur la SMM-nivelo

Ekspluato de vundeblecoj povas esti efektivigita de la operaciumo uzante nekontrolitajn SMI (System Management Interrupt) prizorgantojn, same kiel ĉe la antaŭ-ekzekuta etapo de la operaciumo dum la komencaj etapoj de ekfunkciigo aŭ reveno de dormreĝimo. Ĉiuj vundeblecoj estas kaŭzitaj de memorproblemoj kaj estas dividitaj en tri kategoriojn:

  • SMM Callout - ekzekuto de via kodo kun SMM-rajtoj redirektante la ekzekuton de SWSMI-interrompaj prizorgantoj al kodo ekster SMRAM;
  • Memorkorupto kiu permesas al atakanto skribi iliajn datumojn al SMRAM, speciala izolita memorareo en kiu kodo estas efektivigita kun SMM-rajtoj.
  • Memorkorupto en kodo funkcianta ĉe la DXE (Driver eXecution Environment) nivelo.

Por pruvi la principojn de organizado de atako, ekzemplo de ekspluato estis publikigita, kiu permesas, per atako de la tria aŭ nula ringo de protekto, akiri aliron al la DXE Runtime UEFI kaj ekzekuti vian kodon. La ekspluato manipulas stakan superfluon (CVE-2021-42059) en la UEFI DXE-ŝoforo. Dum la atako, la atakanto povas meti sian kodon en la DXE-ŝoforo, kiu restas aktiva post kiam la operaciumo estas rekomencita, aŭ fari ŝanĝojn al la NVRAM-areo de la SPI Flash. Dum ekzekuto, atakanta kodo povas fari ŝanĝojn al privilegiaj memorareoj, modifi EFI Runtime-servojn kaj influi la lanĉan procezon.

fonto: opennet.ru

Aldoni komenton