OWASP Top Ten e Guia de Testes OWASP comoframeworks para verificação de segurança para              aplicações web        ...
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
Ismael Rocha• Especialista em SI, CISSP, MCSO• Mais de 5 anos de experiência em SI para  aplicações web e desktop• Projeto...
Fabricio Braz• Líder OWASP Brasília• Sócio Fundador - Sr. Nimbus• D.Sc. – UnB & FAU (USA)    – Design de software e padrõe...
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
Objetivos• Fornecer em linhas gerais SI para web  – OWASP Top Ten  – Guia de Testes OWASP                     OWASP Brasília
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
• https://www.owasp.org• Sem fins lucrativos, comunidade, segurança em  software.• DISA (EUA), ENISA (Europa), CCRIC (Cana...
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
OWASP Top 10• 2003,2004,2007 e 2010• Foco em riscos críticos• Foco na educação de desenvolvedores,  engenheiros, gerentes,...
OWASP Top 10 (2010)A1: InjeçãoA2: Cross Site Scripting (XSS)A3: Autenticação e Gerenciamento de Sessão ComprometidosA4: Re...
A1 – InjeçãoInjeção significa…• Subverter a aplicação a partir da inclusão de comandos não desejados no dado  enviado para...
Injeção LDAPOWASP Brasília
Injeção LDAPOWASP Brasília
Injeção LDAPOWASP Brasília
Injeção LDAP• Alvo  – Comprometer a base de contas de usuários.• Método  – Injeção de Código• Proteção  – Validação de ent...
A2 – Cross-Site Scripting (XSS)Ocorre quando…• O dado bruto do atacante é enviado ao navegador de um usuário inocente.Dato...
XSS• Alvo  – Comprometer a confiança que o usuário deposita no    conteúdo do site.• Método  – Injeção de Código• Proteção...
A3 - Autenticação e                                          Gerenciamento de Sessão                                      ...
Autenticação Comprometida                                         1      Usuário envia suas                               ...
A4 – Referências Inseguras                                            Diretas a ObjetosComo você protege o acesso aos seus...
Referências Inseguras Diretas a                                                       Objetos                             ...
A5 - Cross Site Request Forgery                                                      (CSRF)Cross Site Request Forgery• Um ...
CSRF Ilustrado    Atacante coloca uma armadilha em um site (ou via email)1                                                ...
CSRF• Alvo  – Comprometer a confiança que o site deposita no    browser.• Método  – Injeção de Código• Proteção  – Validaç...
A6 – Configuração InseguraAplicações web dependem de uma base segura• Tudo que esteja entre a rede a plataforma• Não se es...
A6 – Configuração Insegura                                      Knowledge Mgmt                                       Commu...
A7 - Falha em Restringir Acesso                                                 a URLComo você protege o acesso as URLs (p...
Falha em Restringir Acesso a                                                         URL                                  ...
A8 - Redirecionamentos e                                        Encaminhamentos Não ValidadosRedirecionamento em aplicaçõe...
A8 - Redirecionamentos e                                                      Encaminhamentos Não Validados               ...
A8 - Redirecionamentos e                                                    Encaminhamentos Não Validados             1   ...
A9 – Armazenamento Criptográfico                                                     InseguroArmazenamento inseguro de dad...
A9 – Armazenamento Criptográfico            Inseguro
A9 – Armazenamento Criptográfico                                                                       Inseguro           ...
A10 – Proteção Insuficiente na                                          Camada de TransporteTransmissão insegura de dados ...
Proteção Insuficiente na Camada                                                       de Transporte                       ...
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
Guia de Testes OWASP• Framework de testes de segurança• Entender o que, por quê, quando, onde e  como testar aplicações we...
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
Teste de Intrusão• Técnica exploratória para determinar o nível  de risco associado a uma vulnerabilidade ou a  um conjunt...
Teste de Intrusão-   Planejamento-   Descobrimento-   Ataque-   Relato                OWASP Brasília
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
Estudo de Caso• Planejamento  – Tipo de teste     • Gray-box  – Estratégia de teste:     • Externo à rede     • Informação...
Estudo de Caso• Planejamento  – Restrições     •   Inspeção de segurança código-fonte     •   Engenharia social     •   Ne...
Estudo de Caso• Descobrimento  – Levantamento de Informações    • Ferramenta automatizada       – Versão do Servidor, bibl...
Estudo de Caso• Descobrimento  – Resultados    •   Versão do Servidor Web: Apache    •   Tecnologia PHP: versão 5.1.6    •...
Estudo de Caso• Descobrimento  – Análise de Vulnerabilidades     •   Em acordo com escopo e limitações     •   Utilização ...
Estudo de Caso• Descobrimento  – Testes realizados (Gerência de Configuração)     •   OWASP-CM-001 – SSL/TLS Testing     •...
Estudo de Caso• Descobrimento  – Testes realizados (Testes de Autenticação)     • OWASP-AT-001 – Credential transport over...
Estudo de Caso• Descobrimento  – Testes realizados (Gerência de sessão)     • OWASP-SM-001 – Testing for session mgt schem...
Estudo de Caso• Descobrimento  – Testes realizados (Validação de dados)     • OWASP-DV-001 – Testing for Reflected XSS    ...
Estudo de Caso• Ataque  – Verifica grau de profundidade das    vulnerabilidades  – OWASP-DV-005 Sql Injection  – Conformid...
Estudo de Caso• Ataque  – Exemplo exploit:     • http://www.alvo.com.br/site/ajax/ajax.php?id=12222%20un       ion%20selec...
Estudo de Caso• Ataque   – Resultados: mais de 2700 contas de     usuários/senhas, acesso administrativo.   – Senhas armaz...
Estudo de Caso• Relato (riscos OWASP Top Ten)    Item OWASP Top                  Id             Vulnerabilidade           ...
Estudo de Caso• Relato (recomendações) Id              Vulnerabilidade                                           Recomenda...
Agenda•   Palestrantes•   Objetivos•   OWASP•   OWASP Top Ten•   Guia de Testes OWASP•   Teste de Intrusão•   Estudo de Ca...
Demo• A1 – Injeção• A2 – XSS• A3/A7 – Falha no Gerenciamento de  Sessão/Armazenamento criptográfico inseguro• A10 – Redire...
Conclusão• Segurança permeia todos os processos e  sistemas não foge à regra• Sempre haverá riscos, mas apoiado em boas  p...
Referências• http://www.md5decrypter.co.uk/• https://www.owasp.org/index.php/Main_Pag  e• https://www.owasp.org/index.php/...
• Obrigado!• H2hc  – Discount code: ECT12                      OWASP Brasília
Upcoming SlideShare
Loading in...5
×

Apresentação Ismael Rocha e Fabricio Braz

495

Published on

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
495
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Apresentação Ismael Rocha e Fabricio Braz

  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 Fabricio Braz
  2. 2. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  3. 3. Ismael Rocha• Especialista em SI, CISSP, MCSO• Mais de 5 anos de experiência em SI para aplicações web e desktop• Projetos• Contribuidor OWASP (Cheat Sheet, Testing Guide v4)• ismaelrg@gmail.com
  4. 4. Fabricio Braz• Líder OWASP Brasília• Sócio Fundador - Sr. Nimbus• D.Sc. – UnB & FAU (USA) – Design de software e padrões de arquitetura para segurança.• SERPRO – UnB – Microsoft – SDL (Segurança no Ciclo de Desenvolvimento) no PSDS (PROCESSO SERPRO de Desenvolvimento de Soluções).• Disciplina Segurança de Software – UnB – Especialização em Segurança da Informação e Comunicações.• BSIMM PT-BR• http://softwareseguro.blogspot.com• .NET, Java• Twitter - fabriciobraz OWASP Brasília
  5. 5. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  6. 6. Objetivos• Fornecer em linhas gerais SI para web – OWASP Top Ten – Guia de Testes OWASP OWASP Brasília
  7. 7. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  8. 8. • https://www.owasp.org• 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 autônomos.• Creative Commons. OWASP Brasília
  9. 9. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  10. 10. OWASP Top 10• 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. OWASP Brasília
  11. 11. OWASP Top 10 (2010)A1: InjeçãoA2: Cross Site Scripting (XSS)A3: Autenticação e Gerenciamento de Sessão ComprometidosA4: Referencias Inseguras Diretas a Objetos.A5: Cross Site Request Forgery (CSRF)A6: Configuração InseguraA7: Falha para Restringir Acesso a URLA8: Redirecionamentos e Encaminhamentos Não ValidadosA9: Armazenamento Criptográfico InseguroA10: Proteção Insuficiente na Camada de Transporte OWASP Brasília
  12. 12. A1 – InjeçãoInjeção significa…• Subverter a aplicação a partir da inclusão de comandos não desejados no dado enviado para o interpretador.Interpretadores…• Recebe as strings e as interpreta como comandos• SQL, OS Shell, LDAP, XPath, Hibernate, etc…Injeção SQL ainda continua muito comum• Muitas aplicações são suscetíveis.• Mesmo que seja simples de se evitar.Impacto típico• Geralmente severo. Toda a base dados pode ser lida ou modificada.• Pode inclusive conceder acesso ao esquema completo da base, acesso a contas, ou ainda, acesso ao sistema operacional. OWASP Brasília
  13. 13. Injeção LDAPOWASP Brasília
  14. 14. Injeção LDAPOWASP Brasília
  15. 15. Injeção LDAPOWASP Brasília
  16. 16. Injeção LDAP• Alvo – Comprometer a base de contas de usuários.• Método – Injeção de Código• Proteção – Validação de entrada – Defesa em profundidade OWASP Brasília
  17. 17. A2 – Cross-Site Scripting (XSS)Ocorre quando…• O dado bruto do atacante é enviado ao navegador de um usuário inocente.Dato bruto …• Armazenado em banco de dados.• Refletido de uma entrada web (campo de formulário, campo oculto, URL, etc…).• Enviado diretamente via cliente rico JavaScript.Virtualmente toda aplicação web possui este problema• Tente essa instrução em seu navegador – javascript:alert(document.cookie).Impacto Típico• Roubo de sessão de usuário, roubo de dado sensível, reescrita de página web, redirecionamento de usuário a um usuário de phishing ou malware.• Mais Severo: Instala um proxy XSS que permite ao atacante observar e direcionar todo o comportamento do usuário em um site vulnerável e redirecionar o usuário a outros sites. OWASP Brasília
  18. 18. XSS• Alvo – Comprometer a confiança que o usuário deposita no conteúdo do site.• Método – Injeção de Código• Proteção – Validação de entrada e saída – Encoding • <script>alert(document.cookie)</script> • &lt;script&gt;alert(document.cookie)%lt;/script&gt OWASP Brasília
  19. 19. A3 - Autenticação e Gerenciamento de Sessão ComprometidosHTTP é um protocolo que não mantem estado (stateless).• Significa que as credenciais precisam acompanhar cada requisição.• Deve-se usar SSL para tudo que exija autenticação.Falhas de gerenciamento de sessão• O SESSION ID é usado para manter a sessão, uma vez que o HTTP não o faz.• O SESSION ID é comumente exposto pela rede, nos browsers, em logs,…Fique atento aos side-doors• Mudança de senha, lembrança de senha, questão secreta, logout, endereço. de email, etc…Impacto comuim• Contas de usuários comprometidas ou sequestro de sessão. OWASP Brasília
  20. 20. Autenticação Comprometida 1 Usuário envia suas Knowledge Mgmt Communication Administration Bus. Functions Transactions E-Commerce credenciais Accounts Financewww.sm.com?JSESSIONID=9FA1DB9EA... O site usa rescrita de URL 2 Custom Code (ex., colocando a sessão na URL) 3 O usuário clica no link http://www.hacker.com em um forum O atacante procura nos logs de www.hacker.com por referer que contenha JSESSIONID 45 O atacante usa o JSESSIONID e se apodera da conta da vítima OWASP Brasília
  21. 21. A4 – Referências Inseguras Diretas a ObjetosComo você protege o acesso aos seus dados?• Isso é em parte imposição de “Autorização” apropriada, juntamente com A7 – Falha em Restringir Acesso a URL.Um erro comum …• Listar somente os objetos autorizados para o usuário corrente, ou ocultar referencias a objetos em campos ocultos• … e não impor tais restrições no servidor• Isso é conhecido como controle de acesso da camada de apresentação, e não funciona.• O atacante simplesmente adultera os valores dos parâmetros.Impacto Típico• Acesso não autorizado a arquivos ou dados pelos usuários. OWASP Brasília
  22. 22. Referências Inseguras Diretas a Objetos • O atacante percebehttps://www.onlinebank.com/user?acct=6065 que o parâmetro de sua conta é 6065 ?acct=6065 • Ele tenta o próximo numero ?acct=6066 • O atacante tem acesso a informação da conta da vítima OWASP Brasília
  23. 23. A5 - Cross Site Request Forgery (CSRF)Cross Site Request Forgery• Um ataque no qual o browser da vítima é enganado de modo a enviar um comando a uma aplicação web vulnerável.• A vulnerabilidade é causada pelo fato dos navegadores incluírem automaticamente dados de autenticação do usuário (session ID, endereço IP, credenciais de domínio Windows, …) em cada requisição.Imagine…• E se um atacante puder tomar posse de seu mouse e fazê-lo clicar em links em seu web banking?• O que eles podem obrigá-lo a fazer?Impacto Comum• Iniciar transações (transferir fundos, encerrar cessão, desativar conta).• Acessar dados sensíveis.• Alterar detalhes da conta. OWASP Brasília
  24. 24. CSRF Ilustrado Atacante coloca uma armadilha em um site (ou via email)1 Aplicação com Uma tag <img> oculta vulnerabilidade CSRF contém um ataque a um site vulnerável Knowledge Mgmt Communication Administration Bus. Functions Transactions E-Commerce Accounts Finance Apesar de logar no site vulnerável, usuário2 acessa o site do atacante Custom Code 3 O site vulneravel recebe A tag <img> é carregada requisições legítimas da pelo navegador – envia vítima e realiza a ação requisição GET (incluindo requisitada credenciais) OWASP Brasília ao site vulnerável
  25. 25. CSRF• Alvo – Comprometer a confiança que o site deposita no browser.• Método – Injeção de Código• Proteção – Validação de entrada e saída – Utilização de tokens – Encoding • <script>alert(document.cookie)</script> • &lt;script&gt;alert(document.cookie)%lt;/script&gt OWASP Brasília
  26. 26. A6 – Configuração InseguraAplicações web dependem de uma base segura• Tudo que esteja entre a rede a plataforma• Não se esqueça do ambiente de desenvolvimentoSeu código fonte é secreto?• Pense em todos os locais nos quais seu código fonte esteja• A segurança não deve depender de um código secretoGC deve estender a todas as partes da aplicação• Todas as credenciais devem mudar em produçãoImpacto Típico• Instalação de backdoor via brecha não corrigida na rede ou no servidor• Exploração de falhas de XSS devido a falta de atualização de frameworks da aplicação• Acesso não autorizado a contas, funcionalidades ou dados padrão da aplicação, ou funcionalidade não usada mas disponível em razão de configuração falha do servidor OWASP Brasília
  27. 27. A6 – Configuração Insegura Knowledge Mgmt Communication Administration Bus. Functions E-Commerce Transactions Accounts Finance Database Custom Code App Configuration Development Framework App Server QA Servers Web Server Hardened OSInsider Test Servers Source Control OWASP Brasília
  28. 28. A7 - Falha em Restringir Acesso a URLComo você protege o acesso as URLs (páginas)?• Isso é em parte imposição de “Autorização” apropriada, juntamente com A4 - Referências Inseguras Diretas a ObjetosUm erro comum …• Mostrar apenas links e opções de menu autorizados• Isso é conhecido como controle de acesso da camada de apresentação, e não funciona• O atacante simplesmente adultera os valores dos parâmetrosImpacto Típico• Os atacantes invocam funções e serviços a elas não autorizados• Acesso a outras contas e dados de usuários• Execução de ações com privilégio elevado OWASP Brasília
  29. 29. Falha em Restringir Acesso a URL • O atacante percebe quehttps://www.onlinebank.com/user/getAccounts a url tem correlação com sua conta /user/getAccounts • Ele a modifica para outro diretório (papel) • /admin/getAccounts, ou • /manager/getAccounts • O atacante visualiza outras contas além da sua OWASP Brasília
  30. 30. A8 - Redirecionamentos e Encaminhamentos Não ValidadosRedirecionamento em aplicações web é muito comum• E com frequência incluem parâmetros fornecidos pelo usuário na URL de destino.• Caso elas não sejam validadas, o atacantes pode direcionar a vitima para o site que desejar.Encaminhamentos são comuns também• Eles enviam internamente a requisição para uma nova página da mesma aplicação.• Em alguns casos os parâmetros definem a página alvo.• Caso não seja validado, o atacante pode conseguir usar uma encaminhamento não validado para subverter as verificações de autenticação e autorização.Impacto Típico• Redireciona a vítima a site de malware e phishing.• A requisição do atacante é encaminhada para para verificações de segurança já realizadas, permitindo acesso não autorizado a dados e funções. OWASP Brasília
  31. 31. A8 - Redirecionamentos e Encaminhamentos Não Validados 1 O atacante envia o ataque a vitima pode email ou site web De: TAM Fidelidade Assunto: Prêmio de 10.000 pontos A TAM tem por hábito premiar os clientes que mais usam nossos serviços, por esta razão A aplicação redireciona 3 a vítima ao site do estamos concedendo 10.000 pontos para você. Para garantir esses pontos preencha o atacante. formulário disponível neste link Knowledge Mgmt Communication Administration Bus. Functions E-Commerce Transactions Accounts A vítima clica no link contendo um parâmetro não Finance 2 validado Custom Code A requisição enviada a um site vulnerável, incluindo o site do atante como parâmetro. Isso redirecionará a vítima ao site do atacante Evil Site 4 O site malicioso instala umhttp://www.irs.gov/taxrefund/claim.jsp?year=2006 malware na vítima & … &dest=www.evilsite.com OWASP Brasília
  32. 32. A8 - Redirecionamentos e Encaminhamentos Não Validados 1 O atacante ataca uma página vulnerável que ele tenha acesso A requisição enviada a uma página vulnerável que o usuário possua acesso. O redirecionamento envia o public void sensitiveMethod( usuário diretamente a uma HttpServletRequest request, HttpServletResponse response) { página privada, subvertendo try { // Do sensitive stuff here. o controle de acesso. ... } catch ( ...2 A aplicação autoriza a requisição, que continua Filter para uma página 3 O encaminhamento de página falha em vulnerável validar o parâmetro, enviado o atacante a uma página não autorizada, public void doPost( HttpServletRequest request, subvertendo o controle de acesso HttpServletResponse response) { try { String target = request.getParameter( "dest" ) ); ... request.getRequestDispatcher( target ).forward(request, response); } catch ( ... OWASP Brasília
  33. 33. A9 – Armazenamento Criptográfico InseguroArmazenamento inseguro de dados sensíveis• Falha na identificação de todos os dados sensíveis.• Falha em se identificar todos os locais que tais dados sensíveis são armazenados: • Bando de dados, arquivos, diretórios, arquivos de log, backups, etc.• Falha em proteger de forma apropriada esses dados em todos os locais.Impacto Típico• Os atacantes acessam e modificam informação confidencial ou privada: • ex., cartão de crédito, registros de histórico de saúde, dados financeiro (seus ou de seus clientes).• Os atacantes podem extrair os segredos para montar o quebra-cabeças dos ataque.• Constrangimento para a empresa, insatisfação do cliente e perda de confiança.• Custo para resolver o incidente, como em forense, envio de cartas de desculpas, reemissão de milhões de cartões de créditos, fornecimento de seguro contra falsificação de identidade.• Condenações na justiça e/ou multas. OWASP Brasília
  34. 34. A9 – Armazenamento Criptográfico Inseguro
  35. 35. A9 – Armazenamento Criptográfico Inseguro Usuario: fabricio; Senha: 7900 8700 6500 8300 8000 8300 9700 10200 10100 8000 9700 11500 11500Usuario: fabricio;Senha: OWASPSafePassSenha ASCII: 79 87 65 83 80 83 97 102 101 80 97 115 115
  36. 36. A10 – Proteção Insuficiente na Camada de TransporteTransmissão insegura de dados sensíveis• Falha na identificação de todos os dados sensíveis• Falha na identificação de todos os locais em que os dados sensíveis são enviados: • Na web, para banco de dados, para parceiros de negócio, em comunicação interna.• Falha em se proteger de forma apropriada este dado em qualquer local.Impacto Típico• Os atacantes acessam o modificam dados confidenciais ou informação privada: • Ex., cartão de crédito, prontuários médicos, dados financeiros (de você ou de seus clientes).• Atacantes extraem segredos para compor outros ataques.• Constrangimento para a empresa, insatisfação do cliente e perda de confiança.• Custo para resolver o incidente, como em forense, etc.• Condenações na justiça e/ou multas. OWASP Brasília
  37. 37. Proteção Insuficiente na Camada de Transporte ParceirosVítima Externa Código Adaptado Sistemas Backend Funcionários 1 2 Atacantes externos Atacantes internos roubam credenciais e roubam credenciais e dados fora da rede dados da rede internaAtacantes Externos Atacantes Internos OWASP Brasília
  38. 38. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  39. 39. 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 OWASP Brasília
  40. 40. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  41. 41. 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 OWASP Brasília
  42. 42. Teste de Intrusão- Planejamento- Descobrimento- Ataque- Relato OWASP Brasília
  43. 43. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  44. 44. 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 OWASP Brasília
  45. 45. 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 OWASP Brasília
  46. 46. 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 OWASP Brasília
  47. 47. 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 OWASP Brasília
  48. 48. 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 OWASP Brasília
  49. 49. 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 OWASP Brasília
  50. 50. 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 OWASP Brasília
  51. 51. 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 OWASP Brasília
  52. 52. Estudo de Caso• Descobrimento – Testes realizados (Validação de dados) • OWASP-DV-001 – Testing for Reflected XSS • OWASP-DV-005 – SQL Injection OWASP Brasília
  53. 53. 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 OWASP Brasília
  54. 54. 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. OWASP Brasília
  55. 55. 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 OWASP Brasília
  56. 56. 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 OWASP Brasília
  57. 57. 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) . OWASP Brasília
  58. 58. Agenda• Palestrantes• Objetivos• OWASP• OWASP Top Ten• Guia de Testes OWASP• Teste de Intrusão• Estudo de Caso• Demo OWASP Brasília
  59. 59. 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 OWASP Brasília
  60. 60. 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 OWASP Brasília
  61. 61. 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 OWASP Brasília
  62. 62. • Obrigado!• H2hc – Discount code: ECT12 OWASP Brasília
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×