O AppArmor bloqueia processos vulneráveis, restringindo os danos que as vulnerabilidades de segurança nesses processos podem causar. O AppArmor também pode ser usado para bloquear o Mozilla Firefox para aumentar a segurança, mas ele não faz isso por padrão.
O que é o AppArmor?
O AppArmor é similar ao SELinux, usado por padrão no Fedora e Red Hat. Embora funcionem de maneira diferente, o AppArmor e o SELinux fornecem segurança de “controle de acesso obrigatório” (MAC). Com efeito, o AppArmor permite que os desenvolvedores do Ubuntu restrinjam as ações que os processos podem tomar.
Por exemplo, um aplicativo que é restrito na configuração padrão do Ubuntu é o visualizador de PDF Evince. Enquanto o Evince pode ser executado como sua conta de usuário, ele só pode executar ações específicas. O Evince possui apenas o mínimo de permissões necessárias para executar e trabalhar com documentos PDF. Se uma vulnerabilidade fosse descoberta no renderizador PDF do Evince e você abrisse um documento malicioso em PDF que assumisse o Evince, o AppArmor restringiria o dano que o Evince poderia fazer. No modelo de segurança tradicional do Linux, o Evince teria acesso a tudo o que você tem acesso. Com o AppArmor, ele só tem acesso a coisas que um visualizador de PDF precisa acessar.
O AppArmor é particularmente útil para restringir softwares que podem ser explorados, como um navegador da Web ou software de servidor.
Visualizando o status do AppArmor
Para visualizar o status do AppArmor, execute o seguinte comando em um terminal:
sudo apparmor_status
Você verá se o AppArmor está sendo executado em seu sistema (ele está sendo executado por padrão), os perfis do AppArmor instalados e os processos confinados em execução.
Perfis do AppArmor
No AppArmor, os processos são restritos por perfis. A lista acima mostra os protocolos que estão instalados no sistema - esses vêm com o Ubuntu. Você também pode instalar outros perfis instalando o pacote apparmor-profiles. Alguns pacotes - software de servidor, por exemplo - podem vir com seus próprios perfis do AppArmor instalados no sistema junto com o pacote. Você também pode criar seus próprios perfis do AppArmor para restringir o software.
Os perfis podem ser executados no “modo de reclamação” ou no “modo de imposição”. No modo de imposição - a configuração padrão para os perfis fornecidos com o Ubuntu - o AppArmor impede que os aplicativos executem ações restritas. No modo de reclamação, o AppArmor permite que os aplicativos realizem ações restritas e cria uma entrada de log reclamando sobre isso. O modo de reclamação é ideal para testar um perfil do AppArmor antes de ativá-lo no modo de aplicação. Você verá todos os erros que ocorreriam no modo de execução.
Os perfis são armazenados no diretório /etc/apparmor.d. Esses perfis são arquivos de texto simples que podem conter comentários.
Ativando o AppArmor para o Firefox
Você também pode perceber que o AppArmor vem com um perfil do Firefox - é o usr.bin.firefox arquivo no /etc/apparmor.d diretório. Ele não está ativado por padrão, pois pode restringir muito o Firefox e causar problemas. o /etc/apparmor.d/disable pasta contém um link para este arquivo, indicando que ele está desativado.
Para ativar o perfil do Firefox e confinar o Firefox com o AppArmor, execute os seguintes comandos:
sudo rm /etc/apparmor.d/disable/usr.bin.firefox
cat /etc/apparmor.d/usr.bin.firefox | sudo apparmor_parser –a
Depois de executar esses comandos, execute o sudo apparmor_status comando novamente e você verá que os perfis do Firefox agora estão carregados.
sudo ln -s /etc/apparmor.d/usr.bin.firefox /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/usr.bin.firefox
Para informações mais detalhadas sobre o uso do AppArmor, consulte a página oficial do Ubuntu Server Guide no AppArmor.