Mehanizam izolacije sličan plegde-u se razvija na FreeBSD-u

To je otkriveno predložena je implementacija a mehanizam za izolaciju aplikacija za FreeBSD, što podsjeća na fold and unveil sistemske pozive razvijene od strane OpenBSD projekta.

Izolacija u plegde se vrši zabranom pristupa sistemskim pozivima koje aplikacija ne koristi i otkrivanjem selektivnog otvaranja pristupa samo određenim putanjama datoteka sa kojima aplikacija može raditi. Za aplikaciju se formira neka vrsta bijele liste sistemskih poziva i putanja datoteka, a svi ostali pozivi i putanje su zabranjeni.

Razlika između presavijenog i otkrivenog, razvijen za FreeBSD, svodi se na pružanje dodatnog sloja koji vam omogućava da izolujete aplikacije bez ili sa minimalnim promenama njihovog koda. Zapamtite da u OpenBSD-u plegde i unlock imaju za cilj čvrstu integraciju sa osnovnim okruženjem i implementiraju se dodavanjem posebnih napomena u kod svake aplikacije.

Kako bi pojednostavili organizaciju zaštite, filteri vam omogućavaju da izbjegnete detalje na nivou pojedinačnih sistemskih poziva i da manipulišete klasama sistemskih poziva (ulaz/izlaz, čitanje datoteke, pisanje u fajl, utičnice, ioctl, sysctl, početak procesa, itd.) . Funkcije ograničenja pristupa mogu se pozvati u kodu aplikacije dok se izvode određene radnje, na primjer, pristup utičnicama i datotekama se može zatvoriti nakon otvaranja potrebnih datoteka i uspostavljanja mrežne veze.

Autor porta za preklapanje i otkrivanje za FreeBSD namijenjen da pruži mogućnost izolacije proizvoljnih aplikacija, za koji je predložen uslužni program zavjesa, koji omogućava primjenu pravila definiranih u posebnom fajlu na aplikacije. Predložena konfiguracija uključuje fajl sa osnovnim postavkama koje definišu klase sistemskih poziva i tipične putanje fajlova specifičnih za određene aplikacije (rad sa zvukom, mreže, logovanje, itd.), kao i fajl sa pravilima pristupa za specifične aplikacije.

Uslužni program zavjesa se može koristiti za izolaciju većine uslužnih programa, serverskih procesa, grafičkih aplikacija, pa čak i cijelih desktop sesija koje nisu izmijenjene. Podržano je dijeljenje zavjese sa mehanizmima izolacije koje obezbjeđuju Jail i Capsicum podsistemi.

Takođe moguće je organizirati ugniježđenu izolaciju, kada pokrenute aplikacije nasljeđuju pravila postavljena od strane nadređene aplikacije, dopunjujući ih zasebnim ograničenjima. Neke operacije kernela (alati za otklanjanje grešaka, POSIX/SysV IPC, PTY) su dodatno zaštićene mehanizmom barijere koji sprečava pristup objektima kernela kreiranim od strane procesa koji nisu trenutni ili roditeljski proces.

Proces može konfigurirati vlastitu izolaciju pozivanjem curtainctl ili korišćenjem funkcija plegde() i unveil() koje obezbeđuje biblioteka libcurtain, slično OpenBSD-u. 'security.curtain.log_level' sysctl je predviđen za praćenje zaključavanja dok je aplikacija pokrenuta.

Pristup X11 i Wayland protokolima je omogućen odvojeno navođenjem opcija "-X"/"-Y" i "-W" pri pokretanju zavjese, ali podrška za grafičke aplikacije još nije dovoljno stabilizirana i ima niz neriješenih problema ( problemi se javljaju uglavnom kada se koristi X11, a podrška za Wayland je mnogo bolja). Korisnici mogu dodati dodatna ograničenja kreiranjem datoteka lokalnih pravila (~/.curtain.conf). Na primjer,

Implementacija uključuje mac_curtain kernel modul za obaveznu kontrolu pristupa (MAC), set zakrpa za FreeBSD kernel sa implementacijom potrebnih drajvera i filtera, libcurtain biblioteku za korištenje plegde i otkrivenih funkcija u aplikacijama, uslužnu zavjesu, prikazuje konfiguraciju datoteke, skup testova i zakrpe za neke programe u korisničkom prostoru (na primjer, za korištenje $TMPDIR za objedinjavanje rada s privremenim datotekama). Kad god je to moguće, autor nastoji da minimizira broj promjena koje zahtijevaju krpljenje kernela i aplikacija.

Konačno ako ste zainteresirani da saznate više o tome, možete provjeriti detalje Na sledećem linku.


Sadržaj članka pridržava se naših principa urednička etika. Da biste prijavili grešku, kliknite ovdje.

Budite prvi koji komentarišete

Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.