Рањивост у КВМ-у омогућава извршавање кода изван гостујућег система на АМД процесорима

Истраживачи из Гоогле Пројецт Зеро тима открили су то пре неколико дана у посту на блогу који су идентификовали рањивост (ЦВЕ-2021-29657) у КВМ хипервизору (хипервизор заснован на Линуку који подржава хардверски убрзану виртуелизацију на к86, АРМ, ПоверПЦ и С / 390) омогућава вам да избегнете изолацију система за госте и покрените свој код на страни окружења домаћина.

Пост спомиње тај проблем манифестује се из Линук кернела 5.10-рц1 до в5.12-рц6, то је, покрива само зрна 5.10 и 5.11 (Проблем није утицао на већину стабилних грана дистрибуције.) Проблем је присутан у нестед_свм_вмрун механизму, имплементираном помоћу АМД СВМ (Сецуре Виртуал Мацхине) екстензије и омогућавајући угнежђено покретање система гостију.

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

Грешка о којој је било речи додељена је ЦВЕ-2021-29657, утиче на верзије језгра в5.10-рц1 до в5.12-рц6 и закрпана је крајем марта 2021. године. Будући да је грешка постала употребљива тек у в5.10 и откривена отприлике 5 месеци касније, већина стварних примена КВМ-а не би требало да утиче. И даље мислим да је проблем занимљива студија случаја у раду потребном за изградњу стабилног бега од госта до домаћина против КВМ-а и надам се да овај чланак може да докаже да компромиси хипервизора нису само теоријски проблеми.

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

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

Конкретно, извршавање ВМРУН операције од госта другог угнијежђеног нивоа (Л2 покренут од другог госта) доводи до другог позива нестед_свм_вмрун и квари структуру свм-> нестед.хсаве, која је прекривена подацима из вмцб из система гостију Л2 .

Као резултат, долази до ситуације да је на нивоу госта Л2 могуће ослободити меморију у структури свм-> нестед.мсрпм, која складишти МСР бит, иако се и даље користи, и приступа МСР хоста животна средина.

То значи, на пример, да се меморија госта може прегледати избацивањем додељене меморије његовог процеса корисничког простора или да се ограничења ресурса за ЦПУ време и меморију могу лако применити. 

Поред тога, КВМ може растеретити већину посла у вези са емулацијом уређаја на компоненту корисничког простора.

Проблем је присутан у коду који се користи на системима са АМД процесорима (квм-амд.ко модул) и не појављује се на Интел процесорима.

 Изван неколико уређаја осетљивих на перформансе који се односе на руковање прекидима, сав сложени код ниског нивоа за пружање приступа виртуелном диску, мрежи или ГПУ-у може се применити у корисничком простору.  

Истраживачи поред описа проблема Такође су припремили радни прототип експлоатације који омогућава покретање коренске љуске из гостињског окружења у хостовом окружењу на систему са процесором АМД Епиц 7351П и језгром Линук 5.10.

Примећује се да ово је први гост који хостује рањивост у КВМ хипервизору сама по себи, није повезана са грешкама у компонентама корисничког простора попут КЕМУ. Исправка је прихваћена у језгру крајем марта.

Коначно ако сте заинтересовани да сазнате више о томе о белешци можете проверити детаље У следећем линку.


Садржај чланка се придржава наших принципа уређивачка етика. Да бисте пријавили грешку, кликните овде.

Будите први који ће коментарисати

Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.