
Aula inicial onde será apresentado o professor, agenda do curso, e justificativas de por quê é importante manter o SELinux ativo e por quê é importante compreender seu funcionamento.
Aula que apresenta ao aluno conceitos introdutórios sobre o SELinux para que o aluno entenda qual o objetivo, propósito e aplicabilidade da ferramenta.
Nesta aula vamos apresentar os elementos do SELinux como politicas de segurança, booleans, gerenciamento de portas de rede, conceito e formação do contexto de segurança que é aplicado ao filesystem e processos.
Compreender a execução do SELinux no sistema operacional, ativando e desativado permanente ou temporariamente.
Entendendo como identificar o denials do SELinux e como alterar a politica de seguração para permitir o acesso.
Aula prática, onde começamos a apresentar exemplos do mundo real que permitirá ao aluno entender na prática como identificar AVC gerados pelo SELinux e como encontrar a solução.
Exemplo de como utilizar diretórios do filesystem para permitir que usuários acessem o servidor VSFTPD e possam fazer upload de seus arquivos para ele.
Aula prática, onde começamos a apresentar exemplos do mundo real que permitirá ao aluno entender na prática como identificar AVC gerados pelo SELinux e como encontrar a solução.
Exemplo 1: Como executar o apache (httpd) em uma porta de rede não padrão.
Exemplo 2: Foi adicionado suporte a upload de imagens e arquivos a um form de sua aplicação web. É necessário ajustar a politica do SELinux para permitir o envio do arquivo para um diretório especificado.
Aula prática, onde começamos a apresentar exemplos do mundo real que permitirá ao aluno entender na prática como identificar AVC gerados pelo SELinux e como encontrar a solução.
Exemplo 1: Permitindo que usuário acessem o servidor de arquivos e utilizem suas pastas home para armazenamento de arquivos.
Exemplo 2: Adicionar ao Samba um diretório do filesystem que será usado por um grupo de usuários para compartilhar arquivos.
Apresentamos ao aluno o modo de funcionamento do SELinux no mundo da virtualização e containers. Como através da extensão Svirt, o SELinux aplica suas políticas no isolamento de máquinas virtuais e containers.
Analisar dois artigos que descrevem como o SELinux atua frente a duas vulnerabilidades de segurança.
A primeira é uma análise de Dan Walsh sobre como o SELinux ajuda a conter exploits que exploram a vulnerabilidade shellshock do bash linux.
A segunda é um analise sobre uma vulnerabilidade no binário da runc, utilizada para inicializar containers.
O SELINUX é um mecanismo avançado de controle de acesso, criado plea Agencia Nacional de Segurança dos Estados Unidos (NSA) e liberado sob a licença open source em 2000 e integrado ao Linux kernel em 2003. Implementado como Linux Security Module (LSM) integrado direto ao Kernel. Funciona adicionando uma camada a mais de controle de acesso no topo do controle de acesso discricionário tradicional que tem sido a base de segurança do Unix e Linux por décadas
O Objetivo desse curso, é apresentar ao aluno aulas expositivas e práticas de forma que o aluno entenda o funcionamento, aplicabilidade, método de operação e procedimento para troubleshoot do SELinux de forma que possa trabalhar conjuntamente com suas aplicação e serviços de rede sem a necessidade de desativar o SELinux, garantindo assim a isolação de processos pretendida.
Durante o curso veremos os seguintes tópicos:
1. Introdução ao SELinux ?
DAC vc MAC
Quem utiliza
Por quê Utilizar
Funcionamento
2. Estrutura do SELinux
Politicas
Contextos
Booleans
Portas de rede
3. Ativando o SELinux e Setroubleshoot
4. Exemplos do mundo real
Servidor FTP e SELINUX
Servidor HTTP e SELINUX
Servidor de arquivos SMB e SELINUX
5. Svirt, o SELinux aplicado na virtualização e em containers
6. Análise de Vulnerabilidades existentes com o SELinux em execução