Кеес Цоок представио је нове закрпе за побољшање сигурности Линук кернела

линук

Кеес Цоок, бивши главни сисадмин на кернел.орг и вођа Убунту сигурносног тима, који сада ради у Гоогле-у да би заштитио Андроид и ЦхромеОС, је објавио сет закрпа које рандомизирају помаке стацк кернела приликом руковања системским позивима. Закрпе побољшавају сигурност језгра променом локације стека, лили то чини стацк нападе много тежим и мање успешним

Оригинална идеја за закрпу припада пројекту ПаКс РАНДКСТАЦК. Године 2019. Елена Ресхетова, инжењер у Интелу, покушала је да створи примену ове идеје, погодне за укључивање у главни састав језгра Линук-а.

Накнадно је иницијативу преузео Кеес Цоок који је представио одговарајућу имплементацију за главну верзију језгра и чије су закрпе планиране за верзију 5.13 Линука.

Режим ће бити онемогућен по дефаулту и за његово омогућавање нуди се параметар командне линије језгра "Рандомизе_кстацк_оффсет = укључено / искључено»И подешавања ЦОНФИГ_РАНДОМИЗЕ_КСТАЦК_ОФФСЕТ_ДЕФАУЛТ, Поред тога, општи трошкови омогућавања режима процењују се на приближно 1% губитка перформанси.

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

За разлику од примене ПаКс РАНДКСТАЦК, у закрпама предложеним за укључивање у језгро, рандомизација се не врши у почетној фази, али након постављања структуре пт_регс, што онемогућава употребу метода заснованих на птрацеу за одређивање случајног одступања током дуготрајног системског позива.

Како су се заштите Линук стацк кернела непрестано побољшавале (мапирање стека засновано на вмап-у са страницама заштите, уклањање тхреад_инфо-а, СТАЦКЛЕАК), нападачи су морали пронаћи нове начине за рад својих екплоита.

Они имају и настављају да се ослањају на детерминизам стека језгра, у ситуацијама када ВМАП_СТАЦК и ТХРЕАД_ИНФО_ИН_ТАСК_СТРУЦТ нису били релевантни. На примјер, сљедећи недавни напади би били ометени да помак стека није био детерминистички између системских позива

Сврха функције рандомизе_кстацк_оффсет је додавање случајног одступања након што је пт_регс гурнут у стек и пре него што се остатак низа нити користи током обраде системског позива, и промените га сваки пут када процес изда системски позив. Извор случајности је тренутно дефинисан архитектуром (али к86 користи мали бајт рдтсц ()).

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

Нема видљивих промена за ово на к86, јер је чувар стека већ безусловно онемогућен за јединицу компилације, али промена је потребна у арм64. Нажалост, не постоји атрибут који се може користити за онемогућавање штедиша стека за одређене функције. Поређење са функцијом ПаКс РАНДКСТАЦК: Функција РАНДКСТАЦК насумично одабире локацију почетка стека (цпу_цуррент_топ_оф_стацк), односно укључује локацију пт_регс структуре на стеку.

У почетку, овај фластер је следио исти приступ, али током недавних дискусија утврђено је да имају малу вредност јер је функционалност птрацеа доступна нападачу, можете користити ПТРАЦЕ_ПЕЕКУСР за читање / писање различитих одступања у структуру пт_регс, посматрање понашања приступне кеш меморије пт_регс и откривање случајних стацк оффсет.

Коначно се спомиње да иницијална имплементација подржава АРМ64 и к86 / к86_64 процесоре.


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

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

*

*

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