Një mekanizëm izolimi i ngjashëm me plegde po zhvillohet në FreeBSD

U zbulua se është propozuar një zbatim një mekanizmi i izolimit të aplikacionit për FreeBSD, e cila të kujton thirrjet e sistemit të palosjes dhe zbulimit të zhvilluara nga projekti OpenBSD.

Izolimi në plegde bëhet duke ndaluar hyrjen në thirrjet e sistemit që nuk përdoren nga aplikacioni dhe duke zbuluar duke hapur në mënyrë selektive aksesin vetëm në shtigje të caktuara skedarësh me të cilat aplikacioni mund të punojë. Për aplikacionin, formohet një lloj liste e bardhë e thirrjeve të sistemit dhe shtigjeve të skedarëve, dhe të gjitha thirrjet dhe shtigjet e tjera janë të ndaluara.

Dallimi midis palosjes dhe zbulimit, i zhvilluar për FreeBSD, zbret për të siguruar një shtresë shtesë që ju lejon të izoloni aplikacionet pa ndryshime ose minimale në kodin e tyre. Mbani mend se në OpenBSD plegde dhe zhbllokim synojnë një integrim të ngushtë me mjedisin bazë dhe zbatohen duke shtuar shënime të veçanta në kodin e çdo aplikacioni.

Për të thjeshtuar organizimin e mbrojtjes, filtrat ju lejojnë të shmangni detajet në nivelin e thirrjeve individuale të sistemit dhe të manipuloni klasat e thirrjeve të sistemit (hyrje/dalje, leximi i skedarit, shkrimi i skedarit, bazat, ioctl, sysctl, fillimi i proceseve, etj.) . Funksionet e kufizimit të aksesit mund të thirren në kodin e aplikacionit kur kryhen veprime të caktuara, për shembull, qasja në priza dhe skedarë mund të mbyllet pas hapjes së skedarëve të nevojshëm dhe vendosjes së një lidhjeje rrjeti.

Autori i portit palos dhe zbulo për FreeBSD synon të sigurojë aftësinë për të izoluar aplikacionet arbitrare, për të cilin propozohet mjeti perde, i cili lejon zbatimin e rregullave të përcaktuara në një skedar të veçantë për aplikacionet. Konfigurimi i propozuar përfshin një skedar me cilësimet bazë që përcaktojnë klasat e thirrjeve të sistemit dhe shtigjet tipike të skedarëve specifike për aplikacione të caktuara (punë me zë, rrjete, regjistrime, etj.), si dhe një skedar me rregulla aksesi për aplikacione specifike.

Përdorimi i perdes mund të përdoret për të izoluar shumicën e shërbimeve, proceset e serverit, aplikacionet grafike dhe madje edhe të gjitha sesionet e desktopit që nuk janë modifikuar. Mbështetet ndarja e perdes me mekanizmat e izolimit të ofruara nga nënsistemet Jail dhe Capsicum.

edhe është e mundur të organizohet izolimi i mbivendosur, kur aplikacionet e lançuara trashëgojnë rregullat e vendosura nga aplikacioni mëmë, duke i plotësuar me kufizime të veçanta. Disa operacione të kernelit (mjetet e korrigjimit, POSIX/SysV IPC, PTY) mbrohen gjithashtu nga një mekanizëm pengues që parandalon aksesin në objektet e kernelit të krijuar nga procese të ndryshme nga procesi aktual ose prind.

Një proces mund të konfigurojë izolimin e vet duke thirrur curtainctl ose duke përdorur funksionet plegde() dhe unveil() të ofruara nga biblioteka libcurtain, të ngjashme me ato të OpenBSD. Sysctl 'security.curtain.log_level' ofrohet për të gjurmuar bllokimet gjatë ekzekutimit të aplikacionit.

Qasja në protokollet X11 dhe Wayland mundësohet veçmas duke specifikuar opsionet "-X"/"-Y" dhe "-W" gjatë fillimit të perdes, por mbështetja për aplikacionet grafike nuk është ende mjaftueshëm e stabilizuar dhe ka një sërë çështjesh të pazgjidhura ( problemet shfaqen kryesisht kur përdorni X11, dhe mbështetja e Wayland është shumë më e mirë). Përdoruesit mund të shtojnë kufizime shtesë duke krijuar skedarë të rregullave lokale (~/.curtain.conf). Për shembull,

Implementimi përfshin modulin e kernelit mac_curtain për kontrollin e detyrueshëm të aksesit (MAC), një grup arnimesh për kernelin FreeBSD me zbatimin e drejtuesve dhe filtrave të nevojshëm, bibliotekën libcurtain për përdorimin e funksioneve plegde dhe të zbuluara në aplikacione, perdën e shërbimeve, tregon konfigurimin skedarë, një grup testesh dhe arnime për disa programe të hapësirës së përdoruesit (për shembull, për të përdorur $TMPDIR për të unifikuar punën me skedarë të përkohshëm). Sa herë që është e mundur, autori përpiqet të minimizojë numrin e ndryshimeve që kërkojnë korrigjimin e kernelit dhe aplikacioneve.

Më në fund nëse jeni të interesuar të dini më shumë për të, ju mund të kontrolloni detajet Në lidhjen vijuese.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.