Bubblewrap 0.6 chega com suporte para Meson e mais

Faz pouco A disponibilidade de a nova versão do sandboxing plástico bolha 0.6, em que algumas mudanças importantes foram feitas como a inclusão de suporte para compilação com Meson, suporte parcial para a especificação REUSE e algumas outras mudanças.

Para quem não conhece o Bubblewrap, deve saber que este é um utilitário normalmente usado para restringir aplicativos individuais a usuários não privilegiados. Na prática, o projeto Flatpak usa Bubblewrap como uma camada para isolar aplicativos iniciados de pacotes.

Para isolamento, o Linux usa tecnologias de virtualização de containers tradicionais baseados no uso de cgroups, namespaces, Seccomp e SELinux. Para realizar operações privilegiadas para configurar um contêiner, o Bubblewrap é iniciado com privilégios de root (um arquivo executável com um sinalizador suid), seguido por uma redefinição de privilégio após o contêiner ser inicializado.

Sobre o Bubblewrap

Bubblewrap é posicionado como uma implementação limitada de suida do subconjunto das funções de namespace do usuário para excluir todos os IDs de usuário e processo do ambiente, exceto o atual, use os modos CLONE_NEWUSER e CLONE_NEWPID.

Para proteção adicional, programas em execução no Bubblewrap iniciam no modo PR_SET_NO_NEW_PRIVS, que proíbe novos privilégios, por exemplo, com o sinalizador setuid.

O isolamento no nível do sistema de arquivos é feito criando, por padrão, um novo namespace de montagem, no qual uma partição raiz vazia é criada usando tmpfs.

Se necessário, as seções FS externas são anexadas a esta seção no «montar - amarrar»(Por exemplo, começando com a opção«bwrap –ro-bind / usr / usr', A seção / usr é encaminhada do host em modo somente leitura).

As capacidades de rede são limitados ao acesso à interface de loopback invertido com isolamento de pilha de rede por meio de indicadores CLONE_NEWNET e CLONE_NEWUTS.

A principal diferença com o projeto Firejail semelhante, que também usa o iniciador setuid, é o Bubblewrap, a camada de contêiner inclui apenas os recursos mínimos necessários e todas as funções avançadas necessárias para iniciar aplicativos gráficos, interagir com a área de trabalho e filtrar chamadas para Pulseaudio são trazidas para o lado do Flatpak e executadas após os privilégios serem redefinidos.

Principais novidades do Bubblewrap 0.6

Nesta nova versão do Bubblewrap 0.6 que se apresenta, destaca-se que suporte adicional para o sistema de construção Meson, em que o suporte para compilar com Autotools foi preservado para agora, mas pretende-se que este ele será removido em favor do uso do Meson em uma versão futura.

Outra novidade nesta nova versão do Bubblewrap 0.6 é a implementação da opção “–add-seccomp” para adicionar mais de um programa seccomp, também adicionou um aviso de que se a opção “–seccomp” for especificada novamente, apenas a última opção será aplicada.

Observa-se também que o suporte parcial para a especificação REUSE, que unifica o processo de especificação de informações de licença e direitos autorais.

Além disso, cabeçalhos também foram adicionados SPDX-License-Identifier para muitos arquivos de código. Seguir as diretrizes de REUSE facilita a determinação automática de qual licença se aplica a quais partes do código do aplicativo.

Por outro lado, acrescentou verificação do valor do contador de argumentos da linha de comando (argc) e implementou uma saída de emergência se o contador for zero. A mudança pPermite bloquear problemas de segurança causado por manipulação incorreta de argumentos de linha de comando passados, como CVE-2021-4034 no Polkit

Das outras mudanças que se destacam nesta nova versão:

  • O branch master no repositório git foi renomeado para main
  • Remova a integração de CI antiga
  • Usando bash via PATH para melhor compatibilidade com sistemas operacionais não FHS

finalmente se você está interessado em saber um pouco mais sobre isso sobre esta nova versão, você pode verificar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.