OWASP_BSB_20120827_TOP10_ISMAELROCHA

767 views

Published on

Apresentação OWASP Top 10 por Ismael Rocha

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
767
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

OWASP_BSB_20120827_TOP10_ISMAELROCHA

  1. 1. OWASP Top Ten e Guia de Testes OWASP comoframeworks para verificação de segurança para aplicações web Ismael Rocha Gonçalves ismaelrg@gmail.com
  2. 2. AGENDA• Palestrante• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo
  3. 3. PALESTRANTE• Especialista em SI, CISSP, MCSO• Mais de 5 anos de experiência em SI para aplicações web e desktop• Projetos• Contribuidor OWASP
  4. 4. OBJETIVOS• Fornecer em linhas gerais SI para web – OWASP Top Ten – Guia de Testes OWASP• Processo estruturado de verificação de segurança – OWASP Application Security Verification Standard• Ciclo de Desenvolvimento Seguro – OpenSAMM/Microsoft SDLC
  5. 5. OWASP• OWASP Foundation – Sem fins lucrativos, comunidade, segurança em software – DISA (EUA), ENISA (Europa), CCRIC (Canadá), ANSSI (França) – Projetos com foco em proteção, detecção e ciclo de vida de software – Ferramentas, documentos, fóruns e capítulos livres
  6. 6. OWASP TOP TEN• 2003,2004,2007 e 2010• Foco em riscos críticos• Foco na educação de desenvolvedores, engenheiros, gerentes, organizações• Referência PCI DSS, DISA etc.
  7. 7. OWASP TOP TENA1 – InjeçãoA2 – Cross site scripting (XSS)A3 – Falha no gerenciamento de sessãoA4 – Referência insegura a objetosA5 – Cross site request forgery (CSRF)A6 – Configuração de Segurança DefeituosaA7 – Armazenamento criptográfico inseguroA8 – Falha de Restrição acesso URLA9 – Proteção insuficiente camada de transporteA10 – Redirecionamento e reenvio não validados
  8. 8. Guia de Testes OWASP• Framework de testes de segurança• Entender o que, por quê, quando, onde e como testar aplicações web• Metodologia de classificação de riscos – Identificação dos riscos – Fatores para estima de probabilidade – Fatores para estima de impacto no negócio – Determinação da severidade do risco
  9. 9. TESTE DE INTRUSÃO• Técnica exploratória para determinar o nível de risco associado a uma vulnerabilidade ou a um conjunto de vulnerabilidades de determinado alvo• Simula um ataque real a um sistema ou infraestrutura• Processo amplo, fases pré e pós-ataques
  10. 10. TESTE DE INTRUSÃO- Planejamento- Descobrimento- Ataque- Relato
  11. 11. ESTUDO DE CASO• Planejamento – Tipo de teste • Gray-box – Estratégia de teste: • Externo à rede • Informação de vulnerabilidades para correção • Sem credenciais e sem conhecimento de detalhes de infraestrutura, exceto endereço IP – Escopo • http://www.alvo.com.br
  12. 12. ESTUDO DE CASO• Planejamento – Restrições • Inspeção de segurança código-fonte • Engenharia social • Negação de serviço • Modificação/exclusão de informações restritas • Testes de lógica de negócio • Testes em áreas restritas da aplicação – Período: • De 2 a 9 de MM de YYYY • Sem restrição de horário
  13. 13. ESTUDO DE CASO• Descobrimento – Levantamento de Informações • Ferramenta automatizada – Versão do Servidor, bibliotecas, tecnologias – Árvore de diretórios com pontos de entradas – Informações sensíveis • Inspeção manual de códigos HTML – Ajax
  14. 14. ESTUDO DE CASO• Descobrimento – Resultados • Versão do Servidor Web: Apache • Tecnologia PHP: versão 5.1.6 • Scripts com ponto de entrada (ferramenta): 167 • Scripts Ajax: 4
  15. 15. ESTUDO DE CASO• Descobrimento – Análise de Vulnerabilidades • Em acordo com escopo e limitações • Utilização dos testes Guia de Testes OWASP • Análise automatizada e manual e análise crítica • CVE
  16. 16. ESTUDO DE CASO• Descobrimento – Testes realizados (Gerência de Configuração) • OWASP-CM-001 – SSL/TLS Testing • OWASP-CM-002 – DB Listener Testing • OWASP-CM-003 – Infrastructure configuration Mgt test • OWASP-CM-007 – Infrastructure and app admin interfaces
  17. 17. ESTUDO DE CASO• Descobrimento – Testes realizados (Testes de Autenticação) • OWASP-AT-001 – Credential transport over encrypted channel • OWASP-AT-002 – Test for user enumeration • OWASP-AT-006 – Test for vulnerable remember me password
  18. 18. ESTUDO DE CASO• Descobrimento – Testes realizados (Gerência de sessão) • OWASP-SM-001 – Testing for session mgt schema • OWASP-SM-003 – Testing for session fixation
  19. 19. ESTUDO DE CASO• Descobrimento – Testes realizados (Validação de dados) • OWASP-DV-001 – Testing for Reflected XSS • OWASP-DV-005 – SQL Injection
  20. 20. ESTUDO DE CASO• Ataque – Verifica grau de profundidade das vulnerabilidades – OWASP-DV-005 Sql Injection – Conformidade com regras acordadas na fase de planejamento – Desenvolvido exploits
  21. 21. ESTUDO DE CASO• Ataque – Exemplo exploit: • http://www.alvo.com.br/site/ajax/ajax.php?id=12222%20un ion%20select%201,1,concat%28nome,%20%27%20%27,%2 0login,%20%27%20%27,%20senha%29,1%20from%20USUA RIOS-- – Objetivo • Obter os campos nome, login e senha da tabela USUARIOS banco de dados ALVO.
  22. 22. ESTUDO DE CASO• Ataque – Resultados: mais de 2700 contas de usuários/senhas, acesso administrativo. – Senhas armazenadas em hash: – Rainbow Tables, tabelas com entradas pré- computadasHASH MD5 Texto Claro4a45c297942c77ad3a47ac4650e7e90a !@#123qwe1ac0111bb4011eeb099059a87548bcb2 kelly12!@e10adc3949ba59abbe56e057f20f883e 12345664760ea431d3ace72ffa9065ed1b706e 1005197eb52b9e89e7272b9742ce97bed92a98a 04010612
  23. 23. ESTUDO DE CASO• Relato (riscos OWASP Top Ten) Item OWASP Top Id Vulnerabilidade Item OWASP Testing Risco Ten Guide A1 – Injeção 01 Injeção de Comandos SQL OWASP-DV-005 Muito Alto A2 – Cross Site 02 Cross-site-scripting OWASP-DV-001 Médio Scripting A6 – Configuração de 03 Versão insegura PHP OWASP-CM-003 Alto segurança defeituosa 04 Slow HTTP OWASP-CM-003 Alto 05 Interfaces administrativas abertas OWASP-CM-007 Alto A7 – Armazenamento 06 Armazenamento de senhas com - Médio criptográfico inseguro hash sem salt A9 – Proteção 07 Canal inseguro para autenticação OWASP-AT-001 Alto insuficiente da camada de transporte
  24. 24. ESTUDO DE CASO• Relato (recomendações) Id Vulnerabilidade Recomendação01 Injeção de Comandos SQL Utilizar APIs que forneçam suporte para queries parametrizadas (STTUTARD, 2008).02 Cross-site-scripting Validar os dados de entrada e saída oriundos de formulários e requisições get; utilizar entidades HTML (&gt, &lt etc). (STTUTARD, 2008)03 Versão insegura PHP Atualizar versão do PHP (STTUTARD, 2008).04 Slow HTTP Aplicar processo de hardening no servidor web (QUALYS).05 Interfaces administrativas abertas Restringir acesso às interfaces administrativas a uma rede segura/interna.06 Armazenamento de senhas com hash Utilizar algoritmo de hash seguro e aplicar técnica de salt (STTUTARD, sem salt 2008).07 Canal inseguro para autenticação Implementar protocolo SSL/TLS compatível com as melhores práticas (STTUTARD, 2008) .
  25. 25. DEMO• A1 – Injeção• A2 – XSS• A3/A7 – Falha no Gerenciamento de Sessão/Armazenamento criptográfico inseguro• A10 – Redirecionamento e reenvios não validados
  26. 26. CONCLUSÃO• Segurança permeia todos os processos e sistemas não foge à regra• Sempre haverá riscos, mas apoiado em boas práticas pode-se levá-los a um nível adequado• OWASP Top Ten – Boa referência/introdução• Guia de testes OWASP – Base sólida para testes web• Ferramentas não são tudo
  27. 27. REFERÊNCIAS• http://www.md5decrypter.co.uk/• https://www.owasp.org/index.php/Main_Pag e• https://www.owasp.org/index.php/Category: OWASP_Top_Ten_Project• https://www.owasp.org/images/5/56/OWASP _Testing_Guide_v3.pdf• http://csrc.nist.gov/publications/nistpubs/800 -115/SP800-115.pdf

×