SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
OWASP Top Ten e Guia de Testes OWASP como
frameworks para verificação de segurança para
              aplicações web

          Ismael Rocha Gonçalves
            ismaelrg@gmail.com
AGENDA
•   Palestrante
•   Objetivos
•   OWASP
•   OWASP Top Ten
•   Guia de Testes OWASP
•   Teste de Intrusão
•   Estudo de Caso
•   Demo
PALESTRANTE
• Especialista em SI, CISSP, MCSO
• Mais de 5 anos de experiência em SI para
  aplicações web e desktop
• Projetos
• Contribuidor OWASP
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
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
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.
OWASP TOP TEN
A1 – Injeção
A2 – Cross site scripting (XSS)
A3 – Falha no gerenciamento de sessão
A4 – Referência insegura a objetos
A5 – Cross site request forgery (CSRF)
A6 – Configuração de Segurança Defeituosa
A7 – Armazenamento criptográfico inseguro
A8 – Falha de Restrição acesso URL
A9 – Proteção insuficiente camada de transporte
A10 – Redirecionamento e reenvio não validados
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
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
TESTE DE INTRUSÃO




-   Planejamento
-   Descobrimento
-   Ataque
-   Relato
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
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
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
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
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
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
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
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
ESTUDO DE CASO
• Descobrimento
  – Testes realizados (Validação de dados)
     • OWASP-DV-001 – Testing for Reflected XSS
     • OWASP-DV-005 – SQL Injection
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
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.
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é-
     computadas
HASH MD5                           Texto Claro
4a45c297942c77ad3a47ac4650e7e90a   !@#123qwe
1ac0111bb4011eeb099059a87548bcb2   kelly12!@
e10adc3949ba59abbe56e057f20f883e   123456
64760ea431d3ace72ffa9065ed1b706e   1005197
eb52b9e89e7272b9742ce97bed92a98a   04010612
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
ESTUDO DE CASO
• Relato (recomendações)
 Id              Vulnerabilidade                                          Recomendação
01    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) .
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
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
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

Más contenido relacionado

La actualidad más candente

Manobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o NmapManobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o NmapClavis Segurança da Informação
 
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire...
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire..."Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire...
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire...SegInfo
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEMagno Logan
 
Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...
Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...
Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...Rafael Brinhosa
 
Teste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testingTeste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testingCristiano Caetano
 
Desenvolvimento de Software Seguro
Desenvolvimento de Software SeguroDesenvolvimento de Software Seguro
Desenvolvimento de Software SeguroAugusto Lüdtke
 

La actualidad más candente (7)

Manobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o NmapManobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
Manobras Evasivas: Técnicas de Evasão para Varreduras com o Nmap
 
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire...
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire..."Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire...
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Dire...
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
 
OWASP - Ferramentas
OWASP - FerramentasOWASP - Ferramentas
OWASP - Ferramentas
 
Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...
Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...
Global AppSec LATAM 2011 Conference - Segurança de Aplicações, para sua organ...
 
Teste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testingTeste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testing
 
Desenvolvimento de Software Seguro
Desenvolvimento de Software SeguroDesenvolvimento de Software Seguro
Desenvolvimento de Software Seguro
 

Destacado

O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408Conviso Application Security
 
Segurança de software na Administração Pública Federal
Segurança de software na Administração Pública FederalSegurança de software na Administração Pública Federal
Segurança de software na Administração Pública FederalOWASP Brasília
 
Treinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurançaTreinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurançaLeivan Carvalho
 
Implementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISOImplementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISOConviso Application Security
 
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)Erick Belluci Tedeschi
 

Destacado (10)

Segurança nos ciclos de desenvolvimento de softwares
Segurança nos ciclos de desenvolvimento de softwaresSegurança nos ciclos de desenvolvimento de softwares
Segurança nos ciclos de desenvolvimento de softwares
 
O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408
 
Ameaças e Vulnerabilidade em Apps Web-2013
Ameaças e Vulnerabilidade em Apps Web-2013Ameaças e Vulnerabilidade em Apps Web-2013
Ameaças e Vulnerabilidade em Apps Web-2013
 
Elicitação e Análise
Elicitação e AnáliseElicitação e Análise
Elicitação e Análise
 
Entendendo o Ciclo de Desenvolvimento Seguro
Entendendo o Ciclo de Desenvolvimento SeguroEntendendo o Ciclo de Desenvolvimento Seguro
Entendendo o Ciclo de Desenvolvimento Seguro
 
Segurança de software na Administração Pública Federal
Segurança de software na Administração Pública FederalSegurança de software na Administração Pública Federal
Segurança de software na Administração Pública Federal
 
Treinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurançaTreinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurança
 
Resumo de Técnicas de elicitação de requisitos
Resumo de Técnicas de elicitação de requisitosResumo de Técnicas de elicitação de requisitos
Resumo de Técnicas de elicitação de requisitos
 
Implementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISOImplementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISO
 
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
 

Similar a OWASP_BSB_20120827_TOP10_ISMAELROCHA

OWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP Brasília
 
Apresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio BrazApresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio BrazOWASP Brasília
 
OWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbookOWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbookGiovane Liberato
 
Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012Jeronimo Zucco
 
Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...
Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...
Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...Rafael Schettino
 
JSR 375 Segurança em Java EE 8
JSR 375 Segurança em Java EE 8JSR 375 Segurança em Java EE 8
JSR 375 Segurança em Java EE 8Helder da Rocha
 
ENSOL 2011 - OWASP e a Segurança na Web
ENSOL 2011 - OWASP e a Segurança na WebENSOL 2011 - OWASP e a Segurança na Web
ENSOL 2011 - OWASP e a Segurança na WebMagno Logan
 
TDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps JavaTDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps Javatdc-globalcode
 
Apresentação OWASP - UBI, Covilhã
Apresentação OWASP - UBI, CovilhãApresentação OWASP - UBI, Covilhã
Apresentação OWASP - UBI, CovilhãCarlos Serrao
 
[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes Automatizados[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes AutomatizadosSamanta Cicilia
 
Vulnerabilidades em Redes Wifi
Vulnerabilidades em Redes WifiVulnerabilidades em Redes Wifi
Vulnerabilidades em Redes WifiDavid de Assis
 
Segurança no MySQL
Segurança no MySQLSegurança no MySQL
Segurança no MySQLMySQL Brasil
 

Similar a OWASP_BSB_20120827_TOP10_ISMAELROCHA (20)

OWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERROWASP_BSB_20120827_mod_security_KLAUBERTHERR
OWASP_BSB_20120827_mod_security_KLAUBERTHERR
 
Apresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio BrazApresentação Ismael Rocha e Fabricio Braz
Apresentação Ismael Rocha e Fabricio Braz
 
OWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbookOWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbook
 
Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012
 
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
 
Api todo list
Api todo listApi todo list
Api todo list
 
Você Escreve Código e Quem Valida?
Você Escreve Código e Quem Valida?Você Escreve Código e Quem Valida?
Você Escreve Código e Quem Valida?
 
Teste de segurança do lado servidor - Nível 1
Teste de segurança do lado servidor - Nível 1Teste de segurança do lado servidor - Nível 1
Teste de segurança do lado servidor - Nível 1
 
Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...
Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...
Otimização de Desempenho de Websites desenvolvidos em Microsoft ASP.NET e hos...
 
JSR 375 Segurança em Java EE 8
JSR 375 Segurança em Java EE 8JSR 375 Segurança em Java EE 8
JSR 375 Segurança em Java EE 8
 
ENSOL 2011 - OWASP e a Segurança na Web
ENSOL 2011 - OWASP e a Segurança na WebENSOL 2011 - OWASP e a Segurança na Web
ENSOL 2011 - OWASP e a Segurança na Web
 
TDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps JavaTDC2016SP - Trilha DevOps Java
TDC2016SP - Trilha DevOps Java
 
Webgoat como ferramenta de aprendizado
Webgoat como ferramenta de aprendizadoWebgoat como ferramenta de aprendizado
Webgoat como ferramenta de aprendizado
 
Owasp web app_flaws
Owasp web app_flawsOwasp web app_flaws
Owasp web app_flaws
 
Apresentação OWASP - UBI, Covilhã
Apresentação OWASP - UBI, CovilhãApresentação OWASP - UBI, Covilhã
Apresentação OWASP - UBI, Covilhã
 
OWASP Top Ten 2004
OWASP Top Ten 2004OWASP Top Ten 2004
OWASP Top Ten 2004
 
[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes Automatizados[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes Automatizados
 
Vulnerabilidades em Redes Wifi
Vulnerabilidades em Redes WifiVulnerabilidades em Redes Wifi
Vulnerabilidades em Redes Wifi
 
O poder do x v.1.1
O poder do x  v.1.1O poder do x  v.1.1
O poder do x v.1.1
 
Segurança no MySQL
Segurança no MySQLSegurança no MySQL
Segurança no MySQL
 

Último

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 

Último (6)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 

OWASP_BSB_20120827_TOP10_ISMAELROCHA

  • 1. OWASP Top Ten e Guia de Testes OWASP como frameworks para verificação de segurança para aplicações web Ismael Rocha Gonçalves ismaelrg@gmail.com
  • 2. AGENDA • Palestrante • Objetivos • OWASP • OWASP Top Ten • Guia de Testes OWASP • Teste de Intrusão • Estudo de Caso • Demo
  • 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. 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. 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. 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. OWASP TOP TEN A1 – Injeção A2 – Cross site scripting (XSS) A3 – Falha no gerenciamento de sessão A4 – Referência insegura a objetos A5 – Cross site request forgery (CSRF) A6 – Configuração de Segurança Defeituosa A7 – Armazenamento criptográfico inseguro A8 – Falha de Restrição acesso URL A9 – Proteção insuficiente camada de transporte A10 – Redirecionamento e reenvio não validados
  • 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. 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. TESTE DE INTRUSÃO - Planejamento - Descobrimento - Ataque - Relato
  • 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. 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. 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. 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. 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. 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. 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. 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. ESTUDO DE CASO • Descobrimento – Testes realizados (Validação de dados) • OWASP-DV-001 – Testing for Reflected XSS • OWASP-DV-005 – SQL Injection
  • 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. 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. 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é- computadas HASH MD5 Texto Claro 4a45c297942c77ad3a47ac4650e7e90a !@#123qwe 1ac0111bb4011eeb099059a87548bcb2 kelly12!@ e10adc3949ba59abbe56e057f20f883e 123456 64760ea431d3ace72ffa9065ed1b706e 1005197 eb52b9e89e7272b9742ce97bed92a98a 04010612
  • 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. ESTUDO DE CASO • Relato (recomendações) Id Vulnerabilidade Recomendação 01 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. 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. 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. 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