Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Hardening Linux



          Hardening Linux

        1º S.G.S.L. / 5º F.G.S.L.

               Juliano Bento
         jul...
Hardening Linux

              Agenda
                  Introdução
                       Definição Hardening
         ...
Hardening Linux

              Agenda
                  Checklist (Controles)
                       Políticas de Contr...
Hardening Linux

   Definições
       Hardening
            Processo de fortificação do sistema operacional
           ...
Hardening Linux

   Projetos de Hardening Linux
       Hardening Linux Kernel:
            Security-Enhanced Linux (SEL...
Hardening Linux

   Importância
       Adequação as Normas
            ISO 17799 e ISO 27001
                 Guia de ...
Hardening Linux

   Checklist
       C1 - Atualização e adequação dos pacotes
        instalados no Linux
            I...
Hardening Linux

   Checklist
       C2 - Adequação da inicialização automática de
        serviços
            Avaliar...
Hardening Linux

   Checklist
       C2 - Adequação da inicialização automática de
        serviços
         ➔ # /etc/in...
Hardening Linux

   Checklist
       C3 - Adequação da metodologia de acesso remoto
        através de emulação de termi...
Hardening Linux

   Checklist
       C4 - Adequação da metodologia de transferência
        de arquivos
            Pre...
Hardening Linux

   Checklist
       C5 - Desabilitação da re-inicialização do sistema
        operacional através do te...
Hardening Linux

   Checklist
       C6 - Autenticação compulsória em modo mono-
        usuário (linux single)
        ...
Hardening Linux

   Checklist
       C7 - Aumento do tempo de espera após tentativa
        fracassada de autenticação
 ...
Hardening Linux

   Checklist
       C8 - Habilitação de registros de logins e tentativas
        de logins fracassadas
...
Hardening Linux

   Checklist
       C8 - Habilitação de registros de logins e tentativas
        de logins fracassadas
...
Hardening Linux

   Checklist
       C9 - Definição de política de senhas
            Definir tamanhos minimos e máximo...
Hardening Linux

   Checklist
       C9 - Definição de política de senhas
            Número máximo de dias que a senha...
Hardening Linux

   Checklist
       C10 - Adequação das permissões dos diretórios
        home dos usuários
          ...
Hardening Linux

   Checklist
       C11 - Adequação do processo de autenticação em
        terminais (console)
        ...
Hardening Linux

   Checklist
       C12 - Adequação do acesso SSH
            Emulação de terminal remoto através cana...
Hardening Linux

   Checklist
       C12 - Adequação do acesso SSH
              Desabilita autentição do serviço SSH a...
Hardening Linux

   Checklist
       C12 - Adequação do acesso SSH
              Habilita separação de privilégios para...
Hardening Linux

   Checklist
       C12 - Adequação do acesso SSH
            /etc/ssh/sshd_config
Hardening Linux

   Checklist
       C13 - Adequação das configurações de rede
        utilizadas pelo kernel
         ...
Hardening Linux

   Checklist
       C13 - Adequação das configurações de rede
        utilizadas pelo kernel
          ...
Hardening Linux

   Checklist
       C13 - Adequação das configurações de rede
        utilizadas pelo kernel
         ...
Hardening Linux

   Checklist
       C14 - Exibição de mensagens de política de uso
        aceitável do sistema
       ...
Hardening Linux

   Checklist
       C15 - Configuração de limite máximo de tamanho
        para arquivos criados por us...
Hardening Linux

   Checklist
       C16 - Configuração de limite máximo de sessões
        de login simultâneas (3) par...
Hardening Linux

   Checklist
       C17 - Ajuste adequado da data e horário do Linux
            Evitar inconsistência...
Hardening Linux

   Checklist
       C18 - Configuração adequada do serviço de
        registros (logs) do sistema opera...
Hardening Linux

   Checklist
       C19 - Adequação da rotação dos registros (logs) do
        sistema operacional
    ...
Hardening Linux

   Checklist
       C20 - Adequação da configuração do gerenciador
        de boot
            Resguar...
Hardening Linux

   Checklist
       C21 - Configuração adequada de regras locais de
        filtragem de tráfego de red...
Hardening Linux

   Revisão Final!
          Políticas de Controle de Acesso (SO e Rede)
          Kernel;
          A...
Hardening Linux

   FIM
Upcoming SlideShare
Loading in …5
×

5

Share

Download to read offline

Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL

Download to read offline

Segurança de Informações é uma área abrangente e importante para as corporações, pois visa garantir a continuidade de negócio, zelando da imagem da Empresa perante o mercado. O maior patrimônio das Empresas, sem dúvida nenhuma, são suas informações. E nela, devemos estar sempre atentos para prevenir as ameaças e diminuir os riscos em falhas. Mitigar os riscos, ameaças, falhas ou panes, devemos implementar controles no GNU/Linux. Os controles vão desde a nível de kernel até políticas de conta de usuários. Estes controles chamamos de "Hardening Linux". A palestra sobre "Hardening Linux" exibirá as melhores práticas das dezenas de controles a serem aplicados no GNU/Linux e a explicação técnica de como implementá-los, fazendo um paralelo com as normas ISO 27001 e ISO 17799.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL

  1. 1. Hardening Linux Hardening Linux 1º S.G.S.L. / 5º F.G.S.L. Juliano Bento juliano.bento@gmail.com
  2. 2. Hardening Linux  Agenda  Introdução  Definição Hardening  Importância  Controles de Hardening  Checklists (21) básico de verificação
  3. 3. Hardening Linux  Agenda  Checklist (Controles)  Políticas de Controle de Acesso (SO e Rede)  Sistema Operacional GNU/Linux  Kernel;  Auditoria;  Rastreabilidade evidência;  Manutenção dos controles;
  4. 4. Hardening Linux  Definições  Hardening  Processo de fortificação do sistema operacional aplicando técnicas específicas de controles.  Efeito de blidagem do sistema  Exemplos:  Patch do kernel ou configuração de parâmetros (sysctl);  Remoção de pacotes e desabilitação de serviços desnecessários.
  5. 5. Hardening Linux  Projetos de Hardening Linux  Hardening Linux Kernel:  Security-Enhanced Linux (SELinux), http://selinux.sourceforge.net  Uso do Linux Security Modules (LSM) no kernel  Grsecurity, http://www.grsecurity.net  PaX Project, http://pax.grsecurity.net/  Hardening Linux:  Bastille Linux, http://bastille-linux.sourceforge.net  Debian Harden
  6. 6. Hardening Linux  Importância  Adequação as Normas  ISO 17799 e ISO 27001  Guia de referência para boas práticas dos processos e gestão da Segurança da Informação Corporativa;  Controle de Acesso  Lógico e Físico  Políticas  Processos (gestão da continuidade de negócio)  É um processo da fase do Gerenciamento de Riscos  Avaliação de todos os ativos
  7. 7. Hardening Linux  Checklist  C1 - Atualização e adequação dos pacotes instalados no Linux  Implementar e documentar procedimentos de gerenciamento de patchs.  Avaliar as janelas de tempo necessárias para aplicabilidade e os devidos impactos.  Garantir a autencidade dos pacotes a serem atualizados.  Avaliar os pacotes desnecessários e removê-los.  # dpkg --get-selections > pacotes_instalados_debian.txt  # rpm -qa > pacotes_instalados_RH.txt
  8. 8. Hardening Linux  Checklist  C2 - Adequação da inicialização automática de serviços  Avaliar quais serviços são necessários para o funcionamento do sistema  Parar a inicialização automática de todos os serviços desnecessários.  Ex: não parar os serviços: syslog, network, ssh, randon e cron
  9. 9. Hardening Linux  Checklist  C2 - Adequação da inicialização automática de serviços ➔ # /etc/init.d/servico stop ➔ # chkconfig --list | grep :on | awk '{ print $1 }' ➔ # chkconfig -s servico off ➔ # update-rc.d -f servico remove ➔ # grep 'disable' /etc/xinetd.d/* ➔ # netstat -ntulp ➔ # lsof
  10. 10. Hardening Linux  Checklist  C3 - Adequação da metodologia de acesso remoto através de emulação de terminal  Remover serviço de TELNET  Protocolo inseguro;  Não garante confidencialidade dos dados trafegados;  As credencias de acesso são enviados em texto puro;  Utilizar OpenSSH  Protocolo totalmente seguro  Checklist próprio para o serviço de SSH
  11. 11. Hardening Linux  Checklist  C4 - Adequação da metodologia de transferência de arquivos  Preferencialmente não utilizar FTP;  Não há garantia da confidencialidade  Utilizar SSH;  SCP  SFTP  Nível de proteção contra usuários maliciosos ou espiões
  12. 12. Hardening Linux  Checklist  C5 - Desabilitação da re-inicialização do sistema operacional através do teclado  Teclas pressionadas simultaneamente Ctrl+Alt+Del  Elimina probabilidade de indisponibilidade do serviço de atacantes com acesso físico ao servidor  Comentar a linha abaixo no arquivo /etc/inittab  # ca::ctrlaltdel:/sbin/shutdown -r -t 4 now  Ubuntu: alterar /etc/event.d/control-alt-delete  Pacote upstart
  13. 13. Hardening Linux  Checklist  C6 - Autenticação compulsória em modo mono- usuário (linux single)  Runleves (System V);  Proteção contra usuário malicioso que possui acesso ao gerenciador de boot  Verificar existência da seguinte linha abaixo no arquivo /etc/inittab  ~~:S:respawn:/sbin/sulogin
  14. 14. Hardening Linux  Checklist  C7 - Aumento do tempo de espera após tentativa fracassada de autenticação  O intervalo de tempo de espera após tentativa fracassada de autenticação em seqüência de um mesmo login em terminal do sistema operacional deve ser aumentado para um valor que permita a mitigação de ataques de força bruta sem comprometer a usabilidade do sistema; Tempo padrão (3s).  Alterar arquivo /etc/login.defs  FAIL_DELAY 15
  15. 15. Hardening Linux  Checklist  C8 - Habilitação de registros de logins e tentativas de logins fracassadas  Auxilia na detecção de ataques de força bruta;  Habilita registro de tentativas fracassadas de login em /var/log/faillog  FAILLOG_ENAB yes #/etc/login.defs  Habilita registro de tentativas de login utilizando usuários inexistentes;  LOG_UNKFAIL_ENAB yes #/etc/login.defs
  16. 16. Hardening Linux  Checklist  C8 - Habilitação de registros de logins e tentativas de logins fracassadas  Habilita registro de logins no sistema juntamente com data/hora associada (lastlog)  session optional pam_lastlog.so #/etc/pam.d/login
  17. 17. Hardening Linux  Checklist  C9 - Definição de política de senhas  Definir tamanhos minimos e máximos conforme política do controle de acesso adotados pela corporação  Habilitar verificação de senhas fracas durante a troca (obscure)  password required pam_unix.so nullok obscure min=8 max=12 md5 # /etc/pam.d/common-password  ou... paranóia (libpam-cracklib)  password required pam_cracklib.so retry=3 minlen=12 difok=3  password required pam_unix.so use_authtok nullok md5 # /etc/pam.d/common-password
  18. 18. Hardening Linux  Checklist  C9 - Definição de política de senhas  Número máximo de dias que a senha dever ser utilizada  PASS_MAX_DAYS 60 #/etc/login.defs  Número mínimo de dias permitido entre trocas de password  PASS_MIN_DAYS 0 #/etc/login.defs  Número de dias de aviso dados antes da senha expirar.  PASS_WARN_AGE 7 #/etc/login.defs
  19. 19. Hardening Linux  Checklist  C10 - Adequação das permissões dos diretórios home dos usuários  Os usuários do sistema não podem ter acesso de leitura ou escrita ou execução no diretório home dos outros usuários (princípio least privilege)  UMASK 077 #/etc/login.defs  Permissão 700 no diretório /home/user  drwx------ 96 user user  Fix: Adequação do diretório home dos usuários já criados anteriormente  for user in $(ls -1 /home/); do chmod 700 $user; done
  20. 20. Hardening Linux  Checklist  C11 - Adequação do processo de autenticação em terminais (console)  Tempo limite permitido para que seja realizada a autenticação;  Número máximo de tentativas fracassadas antes que seja necessário re-iniciar o processo de autenticação  Eficácia contra adivinhação de senhas e ataques de força bruta  LOGIN_RETRIES 2 #/etc/login.defs
  21. 21. Hardening Linux  Checklist  C12 - Adequação do acesso SSH  Emulação de terminal remoto através canal de comunicação criptografado;  Configura o serviço de SSH para somente operar com protocolo SSHv2  Habilita registro detalhado das atividades relacionadas ao serviço de SSH.  Impede a autenticação do usuario root no serviço de SSH.  Habilita a verificação das permissões do diretório home do usuario antes de permitir sua autenticação através de SSH.  Desabilita autentição do serviço SSH atraves de arquivos .rhosts e hosts.equiv. (SSHv1)
  22. 22. Hardening Linux  Checklist  C12 - Adequação do acesso SSH  Desabilita autentição do serviço SSH atraves de combinação de chaves RSA com arquivos .rhosts e hosts.equiv. (SSH v1 e v2)  Desabilita utilização de senhas nulas para autenticação no serviço SSH  Habilita exibição de mensagem anterior a autentição do usuário através de SSH contendo a política de uso aceitável do sistema.  Habilita exibição de mensagem indicativa de data e origem da ultima conexão do usuário após autenticação via SSH.
  23. 23. Hardening Linux  Checklist  C12 - Adequação do acesso SSH  Habilita separação de privilégios para o serviço de SSH. Esta opção faz com que o serviço crie um processo filho com privilégios reduzidos para cada conexão recebida visando mitigar tentativas de elevação indevida de privilégios.  Limita o número máximo (10) de conexões concorrentes ao serviço SSH cuja autenticação ainda não foi realizada com êxito.  Habilita detecção de conexões pendentes ao serviço de SSH que já tenham sido encerradas.  Deve ser informado os usuários que poderão usar o serviço SSH.
  24. 24. Hardening Linux  Checklist  C12 - Adequação do acesso SSH  /etc/ssh/sshd_config
  25. 25. Hardening Linux  Checklist  C13 - Adequação das configurações de rede utilizadas pelo kernel  /etc/sysctl.conf  Mitiga uma série de ataques:  DoS (de maneiras distintas), redirecionamento malicioso de tráfego de rede e encaminhamento indevido de pacotes entre interfaces.  A utilização de SYN cookies deve ser habilitada → DoS Syn Flooding;  Pacotes ICMP destinados a endereços de broadcast ou multicast devem ser ignorados visando mitigar a utilização do sistema como amplificador de ataques de negação de serviço;
  26. 26. Hardening Linux  Checklist  C13 - Adequação das configurações de rede utilizadas pelo kernel  Pacotes ICMP do tipo redirect devem ser ignorados → utilizado apenas entre roteadores;  Pacotes cujo roteamento foi determinado na origem, em oposição a pacotes cujo roteamento foi decidido pelos equipamentos efetivamente responsáveis por esta tarefa, devem ser ignorados;  O envio de pacotes ICMP do tipo redirect deve ser desabilitado;  O encaminhamento de pacotes entre interfaces deve ser desabilitado.
  27. 27. Hardening Linux  Checklist  C13 - Adequação das configurações de rede utilizadas pelo kernel  /etc/sysctl.conf
  28. 28. Hardening Linux  Checklist  C14 - Exibição de mensagens de política de uso aceitável do sistema  Informar ao usuário banner com política de uso aceitável e devidas sanções em caso de má utilização;  Exibição nos terminais locais da estação (servidor) e nas conexões de emulação remota de terminal (ssh);  /etc/issue /etc/issue.net 
  29. 29. Hardening Linux  Checklist  C15 - Configuração de limite máximo de tamanho para arquivos criados por usuários.  Evita ataques de exaustão de recursos;  Paradas inesperadas;  /etc/security/limits.conf  @usuarios hard fsize 100000
  30. 30. Hardening Linux  Checklist  C16 - Configuração de limite máximo de sessões de login simultâneas (3) para usuários.  Evitar ataques de exaustão de recursos (memória, I/O e processamento);  /etc/security/limits.conf  * hard maxlogins 3
  31. 31. Hardening Linux  Checklist  C17 - Ajuste adequado da data e horário do Linux  Evitar inconsistências certificar o horário exato da ocorrência dos eventos do sistema;  Sincronização com servidores NTPs confiáveis;  Configuração: cron ou ntpclient  /etc/ntp.conf
  32. 32. Hardening Linux  Checklist  C18 - Configuração adequada do serviço de registros (logs) do sistema operacional  Enviar todos os eventos de syslog do sistema para servidor syslog corporativo (SOC) para SOC correlacionamento e geração de alertas;  Conteção por um período mínimo (3 anos);  /etc/syslog.conf  *.* @10.10.10.10  Syslog-ng: poder nos filtros!
  33. 33. Hardening Linux  Checklist  C19 - Adequação da rotação dos registros (logs) do sistema operacional  Adequar rotacionamento de logs (logrotate);  Armazenasr eventos ocorridos por um período de tempo pré- estabelecido.  Garantir integridade dos logs (eventos) → evidências;
  34. 34. Hardening Linux  Checklist  C20 - Adequação da configuração do gerenciador de boot  Resguardar  Contra ataques maliciosos de usuários com acesso físico no servidor;  Integridade (modo rescure, modo mono-usuário)  Grub ou LILO  Utilizar senha para alteração de parâmetros na inicialização do Linux  grub-md5-crypt  /boot/grub/menu.lst  password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe
  35. 35. Hardening Linux  Checklist  C21 - Configuração adequada de regras locais de filtragem de tráfego de rede  Implementar filtro de pacotes local  Negar tudo e permitir somente as portas/protocolos necessários;  Iptables  Regras INPUT e OUTPUT
  36. 36. Hardening Linux  Revisão Final!  Políticas de Controle de Acesso (SO e Rede)  Kernel;  Auditoria;  Rastreabilidade evidência;  Manutenção dos controles;
  37. 37. Hardening Linux  FIM
  • andrerserio

    Jul. 17, 2015
  • canto.mauricio

    Jul. 5, 2013
  • AugustoMorais

    Mar. 28, 2013
  • osvaldonovais

    Nov. 23, 2009
  • tecnodiego

    Oct. 13, 2009

Segurança de Informações é uma área abrangente e importante para as corporações, pois visa garantir a continuidade de negócio, zelando da imagem da Empresa perante o mercado. O maior patrimônio das Empresas, sem dúvida nenhuma, são suas informações. E nela, devemos estar sempre atentos para prevenir as ameaças e diminuir os riscos em falhas. Mitigar os riscos, ameaças, falhas ou panes, devemos implementar controles no GNU/Linux. Os controles vão desde a nível de kernel até políticas de conta de usuários. Estes controles chamamos de "Hardening Linux". A palestra sobre "Hardening Linux" exibirá as melhores práticas das dezenas de controles a serem aplicados no GNU/Linux e a explicação técnica de como implementá-los, fazendo um paralelo com as normas ISO 27001 e ISO 17799.

Views

Total views

4,668

On Slideshare

0

From embeds

0

Number of embeds

27

Actions

Downloads

277

Shares

0

Comments

0

Likes

5

×