Планирано је да се механизам за изолацију залога пренесе на Линук

Недавно аутор стандардне библиотеке Цосмополитан Ц и Редбеан платформа најављена преко а најавио је имплементацију механизма за изолацију пледге() за Линук.

Било је првобитно развијен од стране ОпенБСД пројекта y омогућава вам да селективно забраните да је апликације приступају неискоришћеним системским позивима (формира се нека врста беле листе системских позива за апликацију и други позиви су забрањени). За разлику од механизама за контролу приступа системском позиву који су доступни на Линук-у, као што је сеццомп, механизам залагања је дизајниран од самог почетка да буде што је могуће лакши за употребу.

Неуспела иницијатива за изоловање апликација у основном окружењу ОпенБСД коришћењем механизма систраце показала је да је изолација на нивоу појединачних системских позива превише компликована и да одузима много времена.

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

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

Правила за рад са системским позивима су специфицирани у облику напомена које укључују листу дозвољених класа системских позива и низ путања до датотека којима је приступ дозвољен. Након компајлирања и покретања измењене апликације, кернел преузима посао надгледања усклађености са наведеним правилима.

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

Заклетва је као забрањено воће које сви жудимо када шеф каже да треба да користимо ствари као што је Линук. Зашто је то важно? То је зато што пледге() заправо чини безбедност разумљивом. Линук никада заиста није имао ниво сигурности који обични смртници могу да разумеју.

Програмери Линук порта за залагање узели су пример из ФрееБСД-а и уместо промене кода, припремили су додатни услужни програм са пледге.цом који вам омогућава да примените ограничења без промене кода апликације. На пример, да бисте покренули услужни програм цурл са приступом само класама системских позива стдио, рпатх, инет и тхреадстдио, једноставно покрените "./пледге.цом -п 'стдио рпатх инет тхреад' цурл хттп://екампле.цом » .

Услужни програм ради на свим Линук дистрибуцијама од РХЕЛ6 и не захтева роот приступ. Додатно, на основу космополитске библиотеке, обезбеђен је АПИ за управљање ограничењима у коду програма на језику Ц, који омогућава, између осталог, креирање енклава за селективно ограничавање приступа у односу на одређене функције апликације. .

У прошлости је било неколико програмера који су ово испробали. Нећу да наводим имена, јер већина ових пројеката никада није завршена. Када је у питању СЕЦОМП, онлајн туторијали објашњавају само како ставити системске позиве на белу листу, тако да већина људи губи интересовање пре него што схвате како да филтрирају аргументе. Пројекти који су напредовали такође су имали пропусте као што је омогућавање промене сетуид/сетгид/лепљивих битова. Стога, ниједна од тренутних алтернатива не би требало да се користи. Мислим да нас овај напор доводи много ближе томе да имамо пледге() него икада раније.

Имплементација не захтева промене језгра: ограничења услужних програма се преводе у СЕЦЦОМП БПФ правила и обрађују коришћењем Линук-овог природног механизма за изолацију системских позива. На пример, позивање обећања("стдио рпатх", 0) ће се претворити у БПФ филтер

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


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

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

*

*

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