firejail para segurança completa (para scripts baixados do Inet)

0

Eu preciso executar scripts baixados da rede não confiável.

Eu quero rodar esses scripts no Firejail.

Mas firejail --caps.drop=all ls /home/porton/ mostra que tem acesso ao meu diretório pessoal! Não é o que eu preciso.

Como configurar o Firejail (ou outro contêiner de segurança) para poder acessar apenas informações não secretas (como a instalação do sistema operacional em /usr/ , /tmp (de preferência vazio) e sem diretórios base)?

Debian Linux.

    
por porton 19.02.2018 / 22:40

1 resposta

1

Seu comando de exemplo:

firejail --caps.drop=all ls /home/porton/

Cria um sandbox em seu diretório / home / porton / de acordo com a documentação do firejail. Este é um exemplo de como criar um sandbox para o firefox, mas se você olhar para a manpage , Você pode ver que seus scripts precisam de um perfil criado para ter o comportamento que você está pedindo ou de especificar o diretório que você usará. Aqui está um exemplo que irá criar um chroot para o container:

firejail --caps.drop=all --chroot=/tmp/test [Path/to/your/script/here]

O Firejail terá diretórios e diretórios do sistema pertencentes a outro aplicativo e os montará como somente leitura e eles não poderão ser modificados pelo aplicativo. Se você quiser testar isso, não se esqueça de usar o sinalizador --audit para testar o sandbox. Teste tudo isso em um script bash em que você confia, como um script para gravar em um diretório que está fora do sandbox e ler arquivos fora do sandbox, etc.

Outra opção é simplesmente executar scripts não confiáveis em uma VM que não esteja conectada à rede ou outro PC não conectado à rede. Boa sorte e lembre-se de consultar qualquer documentação de programas que você está tentando executar.

    
por 20.02.2018 / 19:50