Рањивости у ММИО механизму Интел процесора

Интел је открио информације о новој класи цурења података кроз микроархитектонске структуре процесора, које омогућавају, кроз манипулацију механизмом ММИО (Мемори Маппед Инпут Оутпут), да се одреде информације обрађене на другим језграма ЦПУ-а. На пример, рањивости омогућавају издвајање података из других процеса, Интел СГКС енклава или виртуелних машина. Рањивости су специфичне само за Интелове процесоре; рањивости не утичу на процесоре других произвођача.

Рањивости се појављују у различитим Интеловим процесорима, укључујући процесоре засноване на Хасвелл, Скилаке, ИцеЛаке, Броадвелл, Лакефиелд, Кабилаке, Цометлаке и Роцкетлаке микроархитектурама, као и Ксеон ЕП/ЕКС, Сцалабле и неке Атом серверске процесоре. Да би се извршио напад, потребан је приступ ММИО-у, који се, на пример, може добити у системима виртуелизације који пружају могућност приступа ММИО-у за гостујуће системе које контролише нападач. Поправка може бити потребна и за системе који користе Интел СГКС (Софтваре Гуард Ектенсионс) изоловане енклаве.

Блокирање рањивости захтева и ажурирање микрокода и коришћење додатних метода заштите софтвера заснованих на коришћењу ВЕРВ инструкције за брисање садржаја микроархитектонских бафера приликом враћања из кернела у кориснички простор или приликом преноса контроле на систем за госте. Слична заштита се такође користи за блокирање претходно идентификованих напада класа МДС (Мицроарцхитецтурал Дата Самплинг), СРБДС (Специал Регистер Буффер Дата Самплинг) и ТАА (Трансацтионал Асинцхроноус Аборт).

На страни микрокода, промене неопходне за имплементацију заштите предложене су у мајском ажурирању микрокода за Интел ЦПУ (ИПУ 2022.1). У Линук кернелу, заштита од нове класе напада укључена је у издања 5.18.5, 5.15.48, 5.10.123, 5.4.199, 4.19.248, 4.14.284 и 4.9.319. Да би се проверила изложеност система рањивости у ММИО-у и проценила активност одређених заштитних механизама, датотека „/сис/девицес/систем/цпу/вулнерабилитиес/ммио_стале_дата“ је додата у језгро Линука. Да би се контролисало укључивање заштите, имплементиран је параметар покретања кернела „ммио_стале_дата“, који може да има вредности „фулл“ (омогућава чишћење бафера при преласку у кориснички простор и у ВМ), „фулл,носмт“ ( као „пун“ + додатно онемогућава СМТ/Хипер- Тхреадс) и „искључено“ (заштита је онемогућена). Нуде се одвојене исправке за хипервизор Ксен и оперативни систем Кубес.

Суштина идентификоване класе рањивости је да неке операције доводе до копирања или премештања података преосталих након извршења на другим ЦПУ језграма из једног микроархитектонског бафера у други. Рањивости у ММИО-у омогућавају да се ови преостали подаци пренесу из изолованих микроархитектонских бафера у регистре видљиве апликацији или ЦПУ бафере. Идентификоване су три методе за издвајање преосталих података преко ММИО:

  • ДРПВ (Девице Регистер Партиал Врите, ЦВЕ-2022-21166) је проблем са нетачним руковањем уписима у неке ММИО регистре. Ако је величина података који се уписују мања од величине регистра, тада се преостале информације из бафера пуњења такође копирају у регистар. Као резултат, процес који иницира непотпуну операцију писања у ММИО регистар може да добије податке који су остали у микроархитектонским баферима из операција које се обављају на другим ЦПУ језграма.
  • СБДС (Схаред Буфферс Дата Самплинг, ЦВЕ-2022-21125) је цурење заосталих података из бафера пуњења везаног за језгро које је резултат кретања из средњих бафера заједничких за сва језгра.
  • СБДР (Схаред Буфферс Дата Реад, ЦВЕ-2022-21123) – проблем је сличан СБДС-у, али се разликује по томе што заостали подаци могу завршити у ЦПУ структурама видљивим апликацијама. Проблеми са СБДС и СБДР појављују се само на процесорима за клијентске системе и на породици сервера Интел Ксеон Е3.

Рањивости у ММИО механизму Интел процесора


Извор: опеннет.ру

Додај коментар