Рањивост у мрежном протоколу ЦАН БЦМ дозволила је ескалацију привилегија у линук језгру 

Јуче објављене су информације о рањивости у Линук језгру а који је већ каталогизиран као ЦВЕ-2021-3609. Ова рањивост омогућава локалном кориснику да повећа своје привилегије на систему због услова трке у имплементацији ЦАН БЦМ протокола и манифестованог у верзијама 2.6.25 до 5.13-рц6 језгра Линук-а.

Пресуда користи предност због ЦАН БЦМ протокол вам омогућава да региструјете свог менаџера порука мрежне мреже контролера (ЦАН) и повежите је са одређеном мрежном утичницом. Када стигне долазна порука, функција се позива бцм_рк_хандлер () нападач може искористити услове трке и присилити мрежну утичницу да се затвори током извршавања бцм_рк_хандлер ().

Проблем долази када је утичница затворена и функција се позива бцм_релеасе (), у којој се ослобађа меморија додељена за структуре бцм_оп и бцм_соцк, који се и даље користе у руковаоцу бцм_рк_хандлер () који још увек ради, па настаје ситуација која доводи до приступа већ ослобођеном меморијском блоку (усе-афтер-фрее).

Ово је најава недавно пријављене грешке (ЦВЕ-2021-3609) у мрежном протоколу ЦАН БЦМ у Линук језгру у распону од верзије 2.6.25 до главне линије 5.13-рц6.
Рањивост је услов расе у нет / цан / бцм.ц који омогућава ескалацију привилегија. Сизбот је у почетку пријавио проблем, а Норберт Слусарек показао се искористивим.

Напад се своди на отварање две ЦАН БЦМ утичнице и њихово везивање за вцан интерфејс. У првом конектору зовете сендмсг () са индикатором РКС_СЕТУП да бисте конфигурисали контролер за долазне ЦАН поруке и на другом конектору позивате сендмсг () да бисте послали поруку првом конектору.

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

Манипулирањем садржаја бцм_соцк, нападач може надјачати показивач на функцију ск-> ск_дата_реади (ск), преусмерити извршење и, користећи технике оријентисаног програмирања (РОП), поништити параметар модпробе_патх и учинити да његов код ради као роот .

Када користи РОП технику, нападач не покушава да стави свој код у знак сећања на, али оперише комадићи машинска упутства су већ доступна у учитаним библиотекама, завршавајући се контролном наредбом ретурн (по правилу су ово функције функција библиотеке).

Непривилеговани корисник може добити дозволе потребне за извршавање напада у контејнерима креираним на системима са омогућеним корисничким простором имена. На пример, кориснички простори имена су подразумевано укључени у Убунту и Федору, али нису омогућени у Дебиану и РХЕЛ-у.

Мој покушај експлоатације концентриран је на језгре са верзијом> = 5.4-рц1 из урезивања бф74аа86е111. Нисам истраживао искоришћавање језгра старијих од 5.4-рц1 помоћу тасклета, међутим чини се да је и коришћење старијих језгара изводљиво. 

Помиње се да истраживач који је идентификовао рањивост успео је да припреми експлоатацију за добијање роот права на системима са кернелима од верзије 5.4 и новијих, укључујући могућност успешног напада на Убунту 20.04.02 ЛТС.

Рад експлоатације своди се на изградњу ланца позива сличним блоковима („гадгети“) како би се добила потребна функционалност. За напад је потребан приступ за стварање ЦАН утичница и конфигурисан вцан мрежни интерфејс.

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

Ако сте заинтересовани да сазнате више о томе, можете се консултовати следећи линк.


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

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

*

*

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