Os 4 Pilares de Segurança de uma Aplicação

Os 4 Pilares de Segurança de uma Aplicação

Nesta palestra detalharei os 4 pilares que formam a base de segurança de qualquer aplicação, independente de linguagem, arquitetura ou plataforma.

1ccd06fade85096cdbe2ac397ace9202?s=128

Er Galvão Abbott

May 12, 2017
Tweet

Transcript

  1. 1.

    L CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 1 / 40 Os 4 Pilares de Segurança de uma Aplicação www.galvao.eti.br Seguranca OS 4 PILARES
  2. 2.

    Presidente (2012 – 2017) da ABRAPHP – Associação Brasileira de

    Profissionais PHP Diretor da PHP Conference Brasil Contribui para a linguagem Embaixador Fedora LATAM Atua como Zend Framework Evangelist para o ZTeam, da Zend. Professor Convidado de Pós-Graduação, PR e SC. 22+ anos desenvolvendo sistemas e aplicações com interface web 17+ destes com PHP 9+ com Zend Framework Palestrante em eventos nacionais e internacionais Instrutor de cursos presenciais e a distância Fundador* e membro do GU PHPRS Site: https://www.galvao.eti.br/ http://people.php.net/galvao Twitter: @galvao Facebook: https://www.facebook.com/galvao.eti.br/ Slides: https://speakerdeck.com/galvao Github: http://github.com/galvao Quem?! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 12/12/17 - 2 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação
  3. 3.

    Objetivo CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 3 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Determinar as 4 práticas que formam a base de segurança de qualquer aplicação, independente de linguagem, arquitetura ou qualquer outra questão tecnológica.
  4. 4.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 4 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Fatores que não contribuem para segurança
  5. 5.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 5 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Fatores que não contribuem para segurança Linguagem
  6. 6.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 6 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Fatores que não contribuem para segurança Linguagem Tipagem
  7. 7.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 7 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Fatores que não contribuem para segurança Linguagem Tipagem Paradigma
  8. 8.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 8 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Fatores que não contribuem para segurança Linguagem Tipagem Paradigma Padrão de Projeto
  9. 9.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 9 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Todo o desenvolvedor deveria dominar Segurança?
  10. 10.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 10 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Todo o desenvolvedor deveria dominar Segurança? Sim!
  11. 11.

    Antes de mais nada... CC Attribution-ShareAlike 3.0 Unported License by

    Er Galvão Abbott - 12/12/17 - 11 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Todo o desenvolvedor deveria dominar Segurança? Sim! ...e Não
  12. 12.

    Os 4 Pilares CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 12/12/17 - 12 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Filtragem Validação Hashing Criptografia
  13. 13.

    Os 4 Pilares em relação ao Top 10 OWASP CC

    Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 12/12/17 - 13 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação → Entrada de Dados não validada → Controle de Acesso Quebrado → Autenticação e Gerenciamento de Sessão quebradas → XSS Buffer Overflows → Falhas de Injeção Tratamento de erros inadequado → Armazenamento Inseguro Negação de Serviço Gerenciamento de Configuração Inseguro Top 10 OWASP 2004
  14. 14.

    Os 4 Pilares em relação ao Top 10 OWASP CC

    Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 12/12/17 - 14 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação → XSS → Injeção → Execução Maliciosa de Arquivo → Referência Direta e Insegura a Objeto → CSRF → Vazamento de Informação e Tratamento de erros inapropriado → Autenticação e Gerenciamento de Sessão quebradas → Armazenamento Criptográfico Inseguro → Comunicações Inseguras → Falha ao restringir acesso a URL Top 10 OWASP 2007
  15. 15.

    Os 4 Pilares em relação ao Top 10 OWASP CC

    Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 12/12/17 - 15 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação → Injeção → XSS → Autenticação e Gerenciamento de Sessão quebradas → Referência Direta e Insegura a Objeto → CSRF Configuração Equivocada de Segurança → Armazenamento Criptográfico Inseguro → Falha ao restringir acesso a URL Proteção de Camada de Transporte Insuficiente → Encaminhamentos e Redirecionamentos não validados Top 10 OWASP 2010
  16. 16.

    Os 4 Pilares em relação ao Top 10 OWASP CC

    Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 12/12/17 - 16 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação → Injeção → Autenticação e Gerenciamento de Sessão quebradas → XSS → Referência Direta e Insegura a Objeto Configuração Equivocada de Segurança → Exposição de Dados Sensíveis → Inexistência de Controle de Acesso à Funções → CSRF Utilização de Componentes Sabidamente Vulneráveis → Encaminhamentos e Redirecionamentos não validados Top 10 OWASP 2013 (Atual*)
  17. 17.

    0 2004 2007 2010 2013 2 4 6 8 10

    12 Edição OWASP # Vuln. Relacionadas www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 12/12/17 - 17 / 40 Os 4 Pilares em relação ao Top 10 OWASP
  18. 18.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 18 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas”
  19. 19.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 19 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares
  20. 20.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 20 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos
  21. 21.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 21 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos Uma das mais prevalentes (Injeção) é conhecida há 10+ anos
  22. 22.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 22 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos Uma das mais prevalentes (Injeção) é conhecida há 10+ anos Nossas aplicações deveriam ser 50% mais seguras há 10+anos
  23. 23.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 23 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos Uma das mais prevalentes (Injeção) é conhecida há 10+ anos Nossas aplicações deveriam ser 50% mais seguras há 10+anos Se conseguirmos minimizar o dano destas 12
  24. 24.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 24 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos Uma das mais prevalentes (Injeção) é conhecida há 10+ anos Nossas aplicações deveriam ser 50% mais seguras há 10+anos Se conseguirmos minimizar o dano destas 12 Nossa aplicação será 75% mais segura
  25. 25.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 25 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos Uma das mais prevalentes (Injeção) é conhecida há 10+ anos Nossas aplicações deveriam ser 50% mais seguras há 10+anos Se conseguirmos minimizar o dano destas 12 Nossa aplicação será 75% mais segura O OWASP poderá avançar o trabalho de pesquisa
  26. 26.

    Conclusões CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 26 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação De um total de 16 Categorias “únicas” 75% (12) são relacionadas aos 4 Pilares Estamos informados sobre 50% (6) há 13+ anos Uma das mais prevalentes (Injeção) é conhecida há 10+ anos Nossas aplicações deveriam ser 50% mais seguras há 10+anos Se conseguirmos minimizar o dano destas 12 Nossa aplicação será 75% mais segura O OWASP poderá avançar o trabalho de pesquisa A empresa poderá avançar o trabalho em features
  27. 27.

    Tratamento de Dados CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 12/12/17 - 27 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Tratamento do dado, podendo causar a sua modificação, após assegurar-se de que apenas os caracteres válidos permanecem Decisão se o dado apresentado é válido de acordo com um conjunto específico de regras Filtragem Validação
  28. 28.

    Tratamento de Dados CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 12/12/17 - 28 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação
  29. 29.

    Tratamento de Dados CC Attribution-ShareAlike 3.0 Unported License by Er

    Galvão Abbott - 12/12/17 - 29 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Guarde o dado original! * Esclarecer à fonte o que houve de errado * Registrar tentativas, especialmente as bem-sucedidas! ! ! Validação não é apenas tipo! * Valor * Comprimento * Formato * Contexto ...
  30. 30.

    Hashing CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 30 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Hashing se refere a integridade e justamente por isso, ironicamente, torna esse tipo de função (com certas adições) perfeita para dados extremamente sigilosos. https://en.wikipedia.org/wiki/Cryptographic_hash_function
  31. 31.

    Hashing CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 31 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Nunca é demais lembrar... MD5 SHA1 https://security.googleblog.com/2017/02/announcing-first-sha1-collision.html !
  32. 32.

    Hashing CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 32 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Sigilo Tratamento Verificação Entrada
  33. 33.

    Hashing CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 33 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Integridade / Sigilo Hashing não serve apenas para senhas, mas para qualquer situação onde não haja necessidade de exposição do dado original !
  34. 34.

    Criptografia CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 34 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Codificação de um dado, com a possibilidade de decodificação. * Cifra * Modo * Chave * Vetor de Inicialização
  35. 35.

    Criptografia CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 35 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Criptografia != Hashing ! ! mcrypt Criptografia != base64 (ou qualquer outra) ! Não apenas para casos “clássicos” !
  36. 36.

    Criptografia CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 36 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Criptografia aumenta o comprimento do dado original em ≃50% ! http://www.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.com/ https://en.wikipedia.org/wiki/Email_address#Syntax Dependendo do caso requer atenção
  37. 37.

    Criptografia CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 37 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Pedro de Alcântara Francisco António João Carlos Xavier de Paula Miguel Rafael Joaquim José Gonzaga Pascoal Cipriano Serafim 128 + ≃50% ≃ 192 caracteres Em outros casos não é problema algum. !
  38. 38.

    Criptografia CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 38 / 40 www.galvao.eti.br Os 4 Pilares de Segurança de uma Aplicação Deve ser usada em qualquer dado que não deve ser visto por qualquer pessoa ! Outros casos…?
  39. 39.

    INFORME-SE! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott

    - 12/12/17 - 39 / 40 www.galvao.eti.br OWASP: https://www.owasp.org/ MITRE CVE: https://cve.mitre.org/ Pesquise a documentação da sua linguagem! Pesquise sobre cifras! Consulte vulnerabilidades! Mantenha-se informado! Os 4 Pilares de Segurança de uma Aplicação
  40. 40.

    Muito obrigado! CC Attribution-ShareAlike 3.0 Unported License by Er Galvão

    Abbott - 12/12/17 - 40 / 40 www.galvao.eti.br ? Dúvidas? ↓ Críticas? ↑ Elogios?! Os 4 Pilares de Segurança de uma Aplicação