Нови напад на микроархитектонске структуре Интел и АМД процесора

Група истраживача са Универзитета Вирџиније и Универзитета Калифорније представила је нову врсту напада на микроархитектонске структуре Интел и АМД процесора, идентификоване током обрнутог инжењеринга недокументованих могућности ЦПУ-а. Предложени метод напада укључује употребу средњег микро-оперативног кеша у процесорима, који се може користити за преузимање информација акумулираних током спекулативног извршавања инструкција.

У сврху оптимизације, процесор почиње да извршава неке инструкције у спекулативном режиму, не чекајући да се заврше претходни прорачуни, а ако тада утврди да предвиђање није било оправдано, враћа операцију у првобитно стање, али податке обрађене током спекулативно извршење се депонује у кеш меморију чији се садржај може одредити.

Напомиње се да нови метод значајно надмашује напад Спецтре в1, отежава откривање напада и није блокиран постојећим методама заштите од напада са стране канала дизајнираним да блокирају рањивости узроковане спекулативним извршавањем инструкција (на пример, коришћење ЛФЕНЦЕ инструкције блокира цурење у последњим фазама спекулативног извршења, али не штити од цурења кроз микроархитектонске структуре).

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

Нови напад на микроархитектонске структуре Интел и АМД процесора

Кеш микрооперација у Интел процесорима је сегментиран у односу на ЦПУ нити (Хипер-Тхреадинг), док АМД Зен процесори користе заједничку кеш меморију, што ствара услове за цурење података не само унутар једне извршне нити, већ и између различитих нити у СМТ-у. (могуће цурење података између кода који се покреће на различитим логичким ЦПУ језграма).

Истраживачи су предложили основни метод за откривање промена у кешу микро операција и неколико сценарија напада који омогућавају креирање скривених канала за пренос података и коришћење рањивог кода за цурење поверљивих података, оба унутар једног процеса (на пример, за цурење података процеса приликом извршавања код треће стране у машинама са ЈИТ-ом и у виртуелним машинама), и између језгра и процеса у корисничком простору.

Када су организовали варијанту Спецтре напада користећи кеш микрооперације, истраживачи су успели да постигну перформансе од 965.59 Кбпс са стопом грешке од 0.22% и 785.56 Кбпс када користе исправљање грешака, у случају организовања цурења унутар исте адресе простор и ниво привилегија. Уз цурење које обухвата различите нивое привилегија (између кернела и корисничког простора), перформансе су биле 85.2 Кбпс са додатом корекцијом грешака и 110.96 Кбпс са стопом грешке од 4%. Приликом напада на АМД Зен процесоре, стварајући цурење између различитих логичких ЦПУ језгара, перформансе су биле 250 Кбпс са стопом грешке од 5.59% и 168.58 Кбпс са исправљањем грешака. У поређењу са класичном методом Спецтре в1, нови напад је био 2.6 пута бржи.

Очекује се да ће заштита од микро-оперативног кеш напада захтевати промене које ће смањити перформансе више него да сте омогућили заштиту од Спецтре напада. Као оптималан компромис, предлаже се да се такви напади блокирају не онемогућавањем кеширања, већ на нивоу праћења аномалија и идентификовања стања кеша који су типични за нападе.

Као и код Спецтре напада, организовање цурења из кернела или других процеса захтева извршење одређеног низа команди (гаџета) на страни процеса жртве, што доводи до спекулативног извршавања инструкција. У Линук кернелу је пронађено око 100 сличних гаџета, који ће бити уклоњени, али се периодично проналазе решења за њихово генерисање, на пример, везано за покретање посебно дизајнираних БПФ програма у језгру.

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

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