2Jul

Como criar perfis AppArmor para bloquear programas no Ubuntu

O AppArmor bloqueia programas no seu sistema Ubuntu, permitindo-lhes apenas as permissões que eles exigem em uso normal - particularmente útil para o software do servidor que pode tornar-se comprometido. O AppArmor inclui ferramentas simples que você pode usar para bloquear outros aplicativos.

AppArmor está incluído por padrão no Ubuntu e em algumas outras distribuições Linux. O Ubuntu embarca o AppArmor com vários perfis, mas também pode criar seus próprios perfis AppArmor. As utilidades do AppArmor podem monitorar a execução de um programa e ajudá-lo a criar um perfil.

Antes de criar seu próprio perfil para um aplicativo, você pode querer verificar o pacote de perfis de aplicativos nos repositórios do Ubuntu para ver se existe um perfil para o aplicativo que deseja confinar.

Criar &Executando um Plano de Teste

Você precisará executar o programa enquanto o AppArmor o está assistindo e percorrendo todas as suas funções normais. Basicamente, você deve usar o programa como seria usado em uso normal: comece o programa, pare, recarregue e use todas as suas características. Você deve projetar um plano de teste que atravessa as funções que o programa precisa executar.

Antes de executar o seu plano de teste, inicie um terminal e execute os seguintes comandos para instalar e executar aa-genprof:

sudo apt-get install apparmor-utils

sudo aa-genprof /path/to/ binário

Deixe aa-genprof rodando no terminal,inicie o programa e execute o plano de teste que você criou acima. Quanto mais abrangente seu plano de teste, menos problemas você irá encontrar mais tarde.

Depois de concluir a execução do seu plano de teste, volte para o terminal e pressione a tecla S para verificar o log do sistema para eventos AppArmor.

Para cada evento, você será solicitado a escolher uma ação. Por exemplo, abaixo, podemos ver que o homem /usr/bin/, que perfilamos, executou /usr/bin/ tbl. Podemos selecionar se /usr/bin/ tbl deve herdar /usr/bin/ configurações de segurança do homem, seja ele deve ser executado com seu próprio perfil AppArmor, ou se ele deve ser executado em modo não confinado.

Para algumas outras ações, você verá prompts diferentes - aqui estamos permitindo o acesso a /dev/ tty, um dispositivo que representa o terminal

No final do processo, você será solicitado a salvar seu novo perfil do AppArmor.

Habilitando o modo de queixa e amp;Tweaking the Profile

Depois de criar o perfil, coloque-o no "modo de reclamação", onde AppArmor não restringe as ações que pode tomar, mas, em vez disso, registra quaisquer restrições que de outra forma ocorreriam:

sudo aa-complain /path/to/ binário

Use o programa normalmentepor um tempo. Depois de usá-lo normalmente no modo queixa, execute o seguinte comando para verificar os erros do seu sistema e atualizar o perfil:

sudo aa-logprof

Usando Forçar Modo para Bloquear o Aplicativo

Depois de concluir, ajuste o seu perfil do AppArmor, habilite "modo força" para bloquear o aplicativo:

sudo aa -force /path/to/ binário

Você pode querer executar o comando sudo aa-logprof no futuro para ajustar seu perfil.

Os perfis AppArmor são arquivos de texto simples, para que você possa abri-los em um editor de texto e alterá-los manualmente. No entanto, os utilitários acima o guiam através do processo.