SMM деңгээлинде кодду аткарууга мүмкүндүк берүүчү InsydeH2O алкагына негизделген UEFI микропрограммасынын кемчиликтери

Көптөгөн өндүрүүчүлөр өздөрүнүн жабдыктары үчүн UEFI микропрограммасын түзүү үчүн колдонгон InsydeH2O алкагында (UEFI BIOSтун эң кеңири таралган ишке ашырылышы), кодду SMM (системаны башкаруу режими) деңгээлинде аткарууга мүмкүндүк берген 23 алсыздык аныкталган. гипервизор режимине караганда жогору артыкчылык (Ring -2) жана коргоонун нөлдүк шакеги жана бардык эстутумга чексиз кирүү мүмкүнчүлүгү. Маселе Fujitsu, Siemens, Dell, HP, HPE, Lenovo, Microsoft, Intel жана Bull Atos сыяктуу өндүрүүчүлөр колдонгон UEFI микропрограммасына таасирин тийгизет.

Абалдарды эксплуатациялоо администратордук укуктар менен локалдык жеткиликтүүлүктү талап кылат, бул маселелерди экинчи даражадагы алсыздыктар катары популярдуу кылат, алар системанын башка аялуу жерлерин эксплуатациялоодон кийин же социалдык инженерия ыкмаларын колдонуудан кийин колдонулат. SMM деңгээлинде жетүү сизге операциялык тутум тарабынан көзөмөлдөнбөгөн деңгээлде кодду аткарууга мүмкүндүк берет, аны микропрограмманы өзгөртүү жана SPI Flashте жашыруун зыяндуу кодду же руткиттерди калтыруу үчүн колдонсо болот, алар операциялык система тарабынан аныкталбаган, ошондой эле жүктөө стадиясында текшерүүнү өчүрүү (UEFI Secure Boot , Intel BootGuard) жана гипервизорлорго чабуулдарды виртуалдык чөйрөлөрдүн бүтүндүгүн текшерүү механизмдерин айланып өтүү.

SMM деңгээлинде кодду аткарууга мүмкүндүк берүүчү InsydeH2O алкагына негизделген UEFI микропрограммасынын кемчиликтери

Абалдарды эксплуатациялоо операциялык тутумдан текшерилбеген SMI (системаны башкаруу үзгүлтүккө учурашы) иштеткичтерин колдонуу менен, ошондой эле жүктөөнүн баштапкы этаптарында же уйку режиминен кайтып келгенде операциялык системанын аткарууга чейинки баскычында жүргүзүлүшү мүмкүн. Бардык алсыздыктар эстутум көйгөйлөрүнөн келип чыгат жана үч категорияга бөлүнөт:

  • SMM Callout – SWSMI үзгүлтүккө учуратуучулардын аткарылышын SMRAMдан тышкары кодго кайра багыттоо аркылуу SMM укуктары менен кодуңузду аткаруу;
  • Эс тутумдун бузулушу, бул чабуулчуга өз маалыматтарын SMRAMга, код SMM укуктары менен аткарылган атайын изоляцияланган эс тутум аймагына жазууга мүмкүндүк берет.
  • DXE (Driver eXecution Environment) деңгээлинде иштеген коддогу эс тутумдун бузулушу.

Чабуулду уюштуруунун принциптерин көрсөтүү үчүн, үчүнчү же нөлдүк коргоо шакекчесинин чабуулу аркылуу DXE Runtime UEFIге кирүү мүмкүнчүлүгүн алууга жана кодуңузду аткарууга мүмкүндүк берүүчү эксплуатациянын мисалы жарыяланды. Эксплуатация UEFI DXE драйвериндеги стектин толуп кетишин (CVE-2021-42059) башкарат. Чабуул учурунда чабуулчу өзүнүн кодун DXE драйверине жайгаштыра алат, ал операциялык система кайра иштетилгенден кийин активдүү бойдон кала берет же SPI Flashтин NVRAM аймагына өзгөртүүлөрдү киргизе алат. Аткаруу учурунда чабуулчунун коду артыкчылыктуу эстутум аймактарына өзгөртүүлөрдү киргизип, EFI Runtime кызматтарын өзгөртүп, жүктөө процессине таасирин тийгизиши мүмкүн.

Source: opennet.ru

Комментарий кошуу