A FreeBSD s'està desenvolupant un mecanisme d'aïllament similar a plegde

Es va donar a conèixer que s'ha proposat una implementació d'un mecanisme d'aïllament d'aplicacions per a FreeBSD, que recorda les trucades al sistema plegde i devel·lació desenvolupades pel projecte OpenBSD.

L'aïllament en plegde es duu a terme prohibint l'accés a les trucades del sistema que no s'utilitzen a l'aplicació i desvetllant mitjançant l'obertura selectiva de l'accés només per a certes rutes de fitxer amb què l'aplicació pot funcionar. Per a l'aplicació, es forma una mena de llista blanca de trucades al sistema i rutes de fitxers, i totes les altres trucades i rutes estan prohibides.

La diferència entre plegde i develat, desenvolupat per a FreeBSD, es redueix a proporcionar una capa addicional que permet aïllar aplicacions sense realitzar canvis en el vostre codi o amb canvis mínims. Recordeu que a OpenBSD plegde i unlock tenen com a objectiu una integració estreta amb l'entorn base i s'implementen afegint anotacions especials al codi de cada aplicació.

Per simplificar l'organització de la protecció, els filtres us permeten evitar detalls a nivell de trucades al sistema individuals i manipular les classes de trucades al sistema (entrada/sortida, lectura d'arxius, escriptura de fitxers, sockets, ioctl, sysctl, inici de processos, etc.) . Les funcions de restricció d'accés es poden trucar al codi de l'aplicació a mesura que es realitzen certes accions, per exemple, l'accés als sockets i els fitxers es poden tancar després d'obrir els fitxers necessaris i establir una connexió de xarxa.

L'autor del port de plegde i devel·lació per a FreeBSD pretén brindar la capacitat d'aïllar aplicacions arbitràries, per a això es proposa la utilitat curtain, que permet aplicar regles definides en un fitxer separat a les aplicacions. La configuració proposada inclou un fitxer amb configuracions bàsiques que defineixen les classes de trucades al sistema i les rutes típiques de fitxer específiques per a certes aplicacions (treball amb so, xarxes, registre, etc.), així com un fitxer amb regles d'accés per a aplicacions específiques.

La utilitat curtain es pot utilitzar per aïllar la majoria de les utilitats, processos de servidor, aplicacions gràfiques i fins i tot sessions descriptori completes que no han estat modificades. S'admet compartir curtain amb els mecanismes d'aïllament proporcionats pels subsistemes Jail i Capsicum.

També és possible organitzar l'aïllament imbricat, quan les aplicacions iniciades hereten les regles establertes per l'aplicació principal, complementant-les amb restriccions separades. Algunes operacions del nucli (eines de depuració, POSIX/SysV IPC, PTY) estan protegides addicionalment per un mecanisme de barrera que impedeix l'accés als objectes del nucli creats per processos que no siguin el procés actual o principal.

Un procés pot configurar el seu propi aïllament trucant a curtainctl o usant les funcions plegde() i unveil()proporcionades per la biblioteca libcurtain, similars a les de OpenBSD. El sysctl 'security.curtain.log_level' es proporciona per fer un seguiment dels bloquejos mentre s'executa l'aplicació.

L'accés als protocols X11 i Wayland s'habilita per separat especificant les opcions «-X»/»-Y» i «-W» en iniciar la cortina, però el suport per a aplicacions gràfiques encara no està prou estabilitzat i té una sèrie de problemes sense resoldre ( els problemes apareixen principalment quan es fa servir X11, i el suport de Wayland és molt millor). Els usuaris poden afegir restriccions addicionals creant fitxers de regles locals (~/.curtain.conf). Per exemple,

La implementació inclou el mòdul de kernel mac_curtain per a control d'accés obligatori (MAC), un conjunt de pegats per al kernel de FreeBSD amb la implementació dels controladors i filtres necessaris, la biblioteca libcurtain per a usar plegde i funcions revelades en aplicacions, la utilitat de cortina, mostra fitxers de configuració, un conjunt de proves i pegats per a alguns programes a l'espai de l'usuari (per exemple, per utilitzar $TMPDIR per unificar el treball amb fitxers temporals). Sempre que sigui possible, l'autor pretén minimitzar la quantitat de canvis que requereixen l'aplicació de pegats al nucli i les aplicacions.

Finalment si estàs interessat en conèixer més a l'respecte, Pots consultar els detalls en el següent enllaç.


El contingut d'l'article s'adhereix als nostres principis de ètica editorial. Per notificar un error punxa aquí.

Sigues el primer a comentar

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.