Como criar perfis do AppArmor para bloquear programas no Ubuntu
O AppArmor bloqueia os programas no seu sistema Ubuntu, permitindo-lhes apenas as permissões que eles exigem em uso normal - particularmente útil para software de servidor que pode ser comprometido. O AppArmor inclui ferramentas simples que você pode usar para bloquear outros aplicativos.
O AppArmor é incluído por padrão no Ubuntu e em algumas outras distribuições do Linux. O Ubuntu envia o AppArmor com vários perfis, mas você também pode criar seus próprios perfis do AppArmor. Os utilitários 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 apparmor-profiles nos repositórios do Ubuntu para ver se um perfil para o aplicativo que você quer confinar já existe.
Criar e executar um plano de teste
Você precisará executar o programa enquanto o AppArmor está assistindo e percorrendo todas as suas funções normais. Basicamente, você deve usar o programa como seria usado no uso normal: iniciar o programa, pará-lo, recarregá-lo e usar todos os seus recursos. Você deve criar um plano de teste que passe pelas funções que o programa precisa executar.
Antes de executar seu plano de teste, ative um terminal e execute os seguintes comandos para instalar e executar o aa-genprof:
sudo apt-get instalar apparmor-utils
sudo aa-genprof / caminho / para / binário
Deixe o aa-genprof em execução no terminal, inicie o programa e execute o plano de teste que você criou acima. Quanto mais abrangente for o seu plano de teste, menos problemas você enfrentará mais tarde.
Depois de concluir o plano de teste, retorne ao terminal e pressione o botão S chave para varrer o log do sistema para eventos do AppArmor.
Para cada evento, você será solicitado a escolher uma ação. Por exemplo, abaixo podemos ver que / usr / bin / man, que nós perfilamos, executamos / usr / bin / tbl. Podemos selecionar se / usr / bin / tbl deve herdar as configurações de segurança de / usr / bin / man, se deve ser executado com seu próprio perfil do AppArmor ou se 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.
Ativando o Modo de Reclamação e Ajustando o Perfil
Depois de criar o perfil, coloque-o no “modo de reclamação”, onde o AppArmor não restringe as ações que ele pode executar, mas registra quaisquer restrições que ocorreriam de outra forma:
sudo aa-complain / path / to / binary
Use o programa normalmente por um tempo. Depois de usá-lo normalmente no modo de reclamação, execute o seguinte comando para varrer os logs do sistema em busca de erros e atualizar o perfil:
sudo aa-logprof
Usando o modo Impor para bloquear o aplicativo
Depois de fazer o ajuste fino do perfil do AppArmor, ative o "modo de aplicação" para bloquear o aplicativo:
sudo aa-enforce / path / to / binário
Você pode querer executar o sudo aa-logprof comando no futuro para ajustar seu perfil.
Os perfis do AppArmor são arquivos de texto simples, para que você possa abri-los em um editor de texto e ajustá-los à mão. No entanto, os utilitários acima guiam você pelo processo.