Versão de isolamento de aplicativo Firejail 0.9.62

Após seis meses de desenvolvimento está disponível liberação do projeto Cadeia de Fogo 0.9.62, dentro do qual está sendo desenvolvido um sistema para execução isolada de aplicações gráficas, de console e de servidor. Usar o Firejail permite minimizar o risco de comprometer o sistema principal ao executar programas não confiáveis ​​ou potencialmente vulneráveis. O programa é escrito em linguagem C, distribuído por licenciado sob GPLv2 e pode ser executado em qualquer distribuição Linux com kernel anterior a 3.0. Pacotes prontos com Firejail preparado nos formatos deb (Debian, Ubuntu) e rpm (CentOS, Fedora).

Para isolamento no Firejail são usados namespaces, AppArmor e filtragem de chamadas do sistema (seccomp-bpf) no Linux. Depois de iniciado, o programa e todos os seus processos filhos usam visualizações separadas dos recursos do kernel, como pilha de rede, tabela de processos e pontos de montagem. Os aplicativos que dependem uns dos outros podem ser combinados em uma sandbox comum. Se desejar, o Firejail também pode ser usado para executar contêineres Docker, LXC e OpenVZ.

Ao contrário das ferramentas de isolamento de contêineres, o firejail é extremamente simples na configuração e não requer a preparação de uma imagem do sistema - a composição do contêiner é formada dinamicamente com base no conteúdo do sistema de arquivos atual e é excluída após a conclusão do aplicativo. São fornecidos meios flexíveis de definir regras de acesso ao sistema de arquivos; você pode determinar quais arquivos e diretórios têm acesso permitido ou negado, conectar sistemas de arquivos temporários (tmpfs) para dados, limitar o acesso a arquivos ou diretórios para somente leitura, combinar diretórios por meio de montagem de ligação e overlayfs.

Para um grande número de aplicativos populares, incluindo Firefox, Chromium, VLC e Transmission, já prontos Perfis isolamento de chamadas do sistema. Para obter os privilégios necessários para configurar um ambiente em sandbox, o executável firejail é instalado com o sinalizador raiz SUID (os privilégios são redefinidos após a inicialização). Para executar um programa em modo de isolamento, basta especificar o nome do aplicativo como argumento para o utilitário firejail, por exemplo, “firejail firefox” ou “sudo firejail /etc/init.d/nginx start”.

Na nova versão:

  • No arquivo de configuração /etc/firejail/firejail.config adicionado configuração file-copy-limit, que permite limitar o tamanho dos arquivos que serão copiados para a memória ao usar as opções “--private-*” (por padrão, o limite é definido como 500 MB).
  • Modelos para criação de novos perfis de restrição de aplicativos foram adicionados ao diretório /usr/share/doc/firejail.
  • Os perfis permitem o uso de depuradores.
  • Filtragem aprimorada de chamadas do sistema usando o mecanismo seccomp.
  • A detecção automática de sinalizadores do compilador é fornecida.
  • A chamada chroot não é mais feita com base no caminho, mas sim usando pontos de montagem baseados no descritor de arquivo.
  • O diretório /usr/share está na lista de permissões de vários perfis.
  • Novos scripts auxiliares gdb-firejail.sh e sort.py foram adicionados à seção conrib.
  • Proteção reforçada na fase de execução de código privilegiado (SUID).
  • Para perfis, novos atributos condicionais HAS_X11 e HAS_NET foram implementados para verificar a presença de um servidor X e acesso à rede.
  • Adicionados perfis para inicialização isolada de aplicativos (o número total de perfis aumentou para 884):
    • i2p,
    • navegador tor (AUR),
    • Zulip,
    • sincronizar novamente
    • sinal-cli
    • tcpdump
    • tubarão,
    • qgis
    • Arena aberta,
    • Deus,
    • fórmula klatex,
    • klatexformula_cmdl,
    • links,
    • xlinks,
    • pandoc
    • equipes para Linux,
    • gravador de som gnome,
    • jornalista,
    • keepassxc-cli,
    • keepassxc-proxy,
    • cliente-rhythmbox,
    • Jerry
    • zelo,
    • mpg123,
    • jogar,
    • mpg123.bin,
    • mpg123-alsa,
    • mpg123-id3dump,
    • fora123,
    • mpg123-jack,
    • mpg123-nas,
    • mpg123-openal,
    • mpg123-oss,
    • mpg123-portáudio,
    • mpg123-pulso,
    • faixa mpg123,
    • pavucontrol-qt,
    • personagens gnomos,
    • mapa de caracteres do gnome,
    • Baleia
    • tb-invólucro inicial,
    • bzcat,
    • kiwix-desktop,
    • bzcat,
    • zstd,
    • pzstd,
    • zstdcat,
    • zstdgrep,
    • sem zstd,
    • zstdmt,
    • unzstd,
    • ar
    • gnomo-látex,
    • pngquant
    • cálculo
    • calgebramóvel,
    • amululado
    • encontrar,
    • profanidade
    • gravador de áudio,
    • monitor de câmera
    • ddgtk
    • desenho,
    • não,
    • gmpc,
    • correio eletrônico,
    • essência
    • pasta essencial.

Fonte: opennet.ru

Adicionar um comentário