Uitgave Bubblewrap 0.12, laag voor het creëren van geïsoleerde omgevingen

Een nieuwe versie van de toolkit voor het organiseren van geïsoleerde omgevingen Bubblewrap 0.12 is uitgebracht, gebruikt om afzonderlijke toepassingen van niet-bevoorrechte gebruikers te beperken. In de praktijk wordt Bubblewrap toegepast door het Flatpak-project als een laag voor het isoleren van toepassingen die uit pakketten worden uitgevoerd. Voor isolatie worden traditionele Linux-technologieën voor containervirtualisatie gebruikt, gebaseerd op cgroups, namespaces, Seccomp en SELinux. De code van het project is geschreven in C en wordt verspreid onder de LGPLv2.1+-licentie.

Isolatie op het niveau van het bestandssysteem wordt gerealiseerd door standaard het creëren van een nieuwe namespace voor mountpunten, waarin een lege root-partitie wordt aangemaakt met behulp van tmpfs. In deze partitie worden indien nodig externe bestandssysteem-partities gekoppeld in de modus 'mount --bind' (bijvoorbeeld bij uitvoering met de optie 'bwrap --ro-bind /usr /usr' wordt de partitie /usr vanuit het hoofd systeem in alleen-lezen modus doorgegeven). Netwerkfunctionaliteiten worden beperkt tot toegang tot de loopback-interface met isolatie van de netwerkstack via de vlaggen CLONE_NEWNET en CLONE_NEWUTS.

Om alle overbodige gebruikers- en procesidentificatoren uit de aangemaakte geïsoleerde omgeving te verwijderen, kunnen de modi CLONE_NEWUSER (gebruikersnamespace) en CLONE_NEWPID (PID-namespace) worden gebruikt, en voor het verbieden van het verkrijgen van nieuwe privileges wordt de modus PR_SET_NO_NEW_PRIVS toegepast. Voor het verkrijgen van de benodigde privileges wordt de 'gebruikersnamespace' gebruikt.

In de nieuwe release:

  • De licentie voor de code is gewijzigd van LGPL 2.0+ naar LGPL 2.1+.
  • De ondersteuning voor bouwer in de vorm van een uitvoerbare file, die extra privileges verkrijgt via de suid root-vlag, is stopgezet. Het hebben van ondersteuning voor 'gebruikersnamespace' in het systeem is nu verplicht. Als reden wordt gegeven dat het onderhoud van de versie met de suid-vlag arbeidsintensief is, aangezien de 'gebruikersnamespace' nu wijdverspreid wordt ondersteund in distributies.
  • De optie '--not-a-security-boundary' is toegevoegd, waarbij sommige fouten bij het configureren van een geïsoleerde sandbox-omgeving, zoals het remounten van een subsysteem, niet leiden tot een noodstop.
  • De сборoptie «assume_kernel» is toegevoegd, die de ondersteuning voor de backward compatibility met Linux-kernels die ouder zijn dan de opgegeven versie, uitschakelt. Bijvoorbeeld, het opgeven van versies 5.6.0+ resulteert in het uitsluiten van een alternatieve implementatie van de functionaliteit «openat2(RESOLVE_IN_ROOT)».

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster