SlideShare a Scribd company logo
1 of 38
Download to read offline
Segurança Web
OWASP 2013 – TOP 10
;10) Redirects e Forwards não validados
• Aplicações web geralmente usam redirects e forwards para
enviar usuários para outras páginas/sites. Sem a validação
necessária, agressores podem redirecionar as vítimas para
sites maliciosos OU utilizar forwards para acessar páginas
não autorizadas.
10) Redirects e Forwards não validados
Como funciona?
Exemplos:
1) http://www.meusite.com/redirect.jsp?url=virus.com
2) http://www.meusite.com/redirect.jsp?fwd=admin
10) Redirects e Forwards não validados
Como evitar?
1) Evite forwards e redirects
2) Caso realmente sejam necessários, não utilize
parâmetros do usuário para “definir” o destino;
3) Se os parâmetros não podem ser evitados (geralmente
podem) verifique que o valor informado é válido para o
usuário (whitelist)
10) Redirects e Forwards não validados
;
9) Usar componentes com falhas de segurança
conhecidas
Bibliotecas vulneráveis podem ser exploradas por
usuários maliciosos. O impacto de falhas de
segurança em bibliotecas/componentes pode
variar bastante.
9) Usar bibliotecas com falhas de segurança
conhecidas
Como funciona?
1) É difícil.
2) Não usar nenhuma biblioteca?
3) Verificar o site/bugzilla/changelog/issues das bibliotecas
que estão sendo utilizadas, incluindo as dependências;
4) Manter as bibliotecas atualizadas
9) Usar bibliotecas com falhas de segurança
conhecidas
Como evitar?
;8) CSRF (Cross-Site Request Forgery)
Como funciona?
1) Usuário se autentica normalmente no site exemplo.com.br
2) Sem efetuar logout, o usuário visita o site virus.com.br, que
faz uma requisição maliciosa para o site exemplo.com.br
3) Como o usuário ainda está autenticado, caso o site
exemplo.com.br não esteja protegido, a requisição
funcionará normalmente.
8) CSRF
Exemplos...
8) CSRF
Como evitar?
1) Evitar CSRF geralmente implica em criar uma token em
cada requisição HTTP. Essa token dever única e mudar, no
mínimo, a cada nova sessão.
2) A token também pode ser incluída na URL (através da
query string, mas isso é menos seguro)
3) CAPTCHAs também ajudam a proteger contra CSRF.
8) CSRF
;
7) Falta de verificação de acesso em
funcionalidades
Como funciona?
• Um usuário malicioso simplesmente muda a URL ou muda
um parâmetro e acessa uma funcionalidade do sistema
que deveria estar bloqueada.
7) Falta de verificação de acesso em
funcionalidades
Como evitar?
1) O mecanismo de autorização deve, por padrão, negar
acesso a uma funcionalidade e só permitir acesso caso o
usuário possua a permissão explicitamente definida
2) A maior parte das aplicações não exibem links e botões
para telas/rotinas bloqueadas, mas essa validação
também deve ser efetuada no Controller ou na lógica de
negócio
7) Falta de verificação de acesso em
funcionalidades
6) Exposição de dados confidenciais
1) Existe algum dado confidencial (ex.: senhas, número de
cartões de crédito) armazenado em texto?
2) A conexão está usando HTTP (ao invés de HTTPS) para
transmitir dados confidenciais?
6) Exposição de dados confidenciais
;
5) Configuração incorreta de segurança
Exemplos:
1) Existem recursos desnecessários habilitados ou instalados
(ex. portas, serviços, páginas, contas, privilégios)?
2) Os usuários e senhas padrão foram alterados?
3) No caso de erros no sistema, o stack trace é exibido para os
usuários (ou qualquer outra informação excessiva)?
4) As configurações padrão de segurança nos frameworks de
desenvolvimento (ASP.NET, Spring, Struts) foram alteradas?
5) Configuração incorreta de segurança
;
4) Referências diretas não protegidas
Exemplos:
http://www.meusite.com/compras/detalhe?idCompra=1234
4) Referências diretas não protegidas
1) Valide o acesso antes de exibir o conteúdo
2) Não utilize referências diretas. Crie referências indiretas
que são válidas somente para um usuário ou sessão
(map)
4) Referências diretas não protegidas
Como evitar?
http://marcoagner.com/posts/ingresso.com-como-nao-lidar-com-
seguranca-da-info/
4) Referências diretas não protegidas
Outro exemplo:
;
3) XSS (Cross-Site Scripting)
• Um usuário malicioso envia texto contendo scripts que
serão interpretados pelo browser
• Praticamente qualquer fonte de dados pode ser a origem
da injeção de scripts: campos de texto, URL, banco de
dados
• O impacto da injeção de script inclui: roubar sessão,
modificar sites (phising), redirecionar usuários, forçar
download de arquivos, etc.
3) XSS (Cross-Site Scripting)
1) Nunca confiar em dados fornecidos pelo usuário
2) Fazer escape dos caraceteres que serão exibidos na
página/script/url
3) Content-Security-Policy header
4) https://www.owasp.org/index.php/XSS_Filter_Evasion_C
heat_Sheet
3) XSS (Cross-Site Scripting)
Como evitar?
;
2) Autenticação/gerenciamento de
sessão incorreto
• Autenticação e gerenciamento de sessão é difícil de
implementar corretamente;
• As aplicações normalmente possuem falhas que permitem
usuários maliciosos obter senhas, logins, tokens de sessão
ou explorar outras falhas para utilizar a identidade de
outro usuário
2) Autenticação/gerenciamento de sessão incorreto
Exemplos...
2) Autenticação/gerenciamento de sessão
incorreto
2) Autenticação/gerenciamento de sessão
incorreto
1) Senhas não são criptografadas durante o armazenamento
2) Credenciais podem ser adivinhadas, recuperadas ou
alteradas através de funções como “esqueci minha senha”,
“mudar senha”, etc;
3) Sessions Ids são expostos na URL (URL rewriting)
4) Session ids são vulneráveis a “Session Fixation”
5) Sessão não é invalidada durante o logout ou nunca expira
6) Senhas/session ids são enviados sem criptografia em
conexões não criptografadas (ex.: HTTP)
;
1) Injection
RECAPITULANDO...
1) Injection
2) Autenticação/gerenciamento de sessão incorreto
3) XSS (Cross-Site Scripting)
4) Referências diretas não protegidas
5) Configuração incorreta de segurança
6) Exposição de dados confidenciais
7) Falta de verificação de acesso em funcionalidades
8) CSRF (Cross-Site Request Forgery)
9) Usar componentes com falhas de segurança conhecidas
10) Redirects e forwards não validados
;
0) Heart Bleed
"Catastrophic is the right word. On the scale of 1 to
10, this is an 11."
Application Security Verification Standard
ASVSASVS
Referências
o https://www.owasp.org
o https://www.owasp.org/index.php/Category:OWASP_App
lication_Security_Verification_Standard_Project
o http://docs.spring.io/spring-
security/site/docs/3.2.x/reference/htmlsingle/#csrf
o https://freedom-to-tinker.com/blog/wzeller/popular-
websites-vulnerable-cross-site-request-forgery-attacks/

More Related Content

What's hot

Segurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASPSegurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASPFabiano Pereira
 
Desenvolvimento de Software Seguro
Desenvolvimento de Software SeguroDesenvolvimento de Software Seguro
Desenvolvimento de Software SeguroAugusto Lüdtke
 
Segurança em Aplicações Web
Segurança em Aplicações WebSegurança em Aplicações Web
Segurança em Aplicações WebCassio Ramos
 
Xss Desvendado!
Xss Desvendado!Xss Desvendado!
Xss Desvendado!ricardophp
 
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEBDica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEBAlcyon Ferreira de Souza Junior, MSc
 
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
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesClavis Segurança da Informação
 
Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )Pablo Ribeiro
 
Teste de Segurança: Vulnerabilidade de Aplicações Web
Teste de Segurança: Vulnerabilidade de Aplicações WebTeste de Segurança: Vulnerabilidade de Aplicações Web
Teste de Segurança: Vulnerabilidade de Aplicações WebMarcio Roberto de Souza Godoi
 
XSS Desvendado
XSS DesvendadoXSS Desvendado
XSS Desvendadoricardophp
 
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Teste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testingTeste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testingCristiano Caetano
 
Segurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultadosSegurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultadosAlex Camargo
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Quem tem medo do XSS
Quem tem medo do XSSQuem tem medo do XSS
Quem tem medo do XSSWilliam Costa
 
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosSegurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosLuis Cipriani
 

What's hot (19)

Segurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASPSegurança em Aplicações Web conforme OWASP
Segurança em Aplicações Web conforme OWASP
 
Desenvolvimento de Software Seguro
Desenvolvimento de Software SeguroDesenvolvimento de Software Seguro
Desenvolvimento de Software Seguro
 
Segurança em Aplicações Web
Segurança em Aplicações WebSegurança em Aplicações Web
Segurança em Aplicações Web
 
Xss Desvendado!
Xss Desvendado!Xss Desvendado!
Xss Desvendado!
 
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEBDica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
 
Testes de segurança em aplicações web
Testes de segurança em aplicações webTestes de segurança em aplicações web
Testes de segurança em aplicações web
 
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
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
 
Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )
 
Teste de Segurança: Vulnerabilidade de Aplicações Web
Teste de Segurança: Vulnerabilidade de Aplicações WebTeste de Segurança: Vulnerabilidade de Aplicações Web
Teste de Segurança: Vulnerabilidade de Aplicações Web
 
XSS Desvendado
XSS DesvendadoXSS Desvendado
XSS Desvendado
 
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Teste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testingTeste seguranca aplicacoes web security testing
Teste seguranca aplicacoes web security testing
 
Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019
 
Segurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultadosSegurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultados
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Quem tem medo do XSS
Quem tem medo do XSSQuem tem medo do XSS
Quem tem medo do XSS
 
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupadosSegurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
Segurança de APIs HTTP, um guia sensato para desenvolvedores preocupados
 

Similar to OWASP TOP 10 - Web Security

CWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenCWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenPOANETMeetup
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...Clavis Segurança da Informação
 
Saindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações webSaindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações webIgor Carneiro
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Clavis Segurança da Informação
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPFlavio Souza
 
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali LinuxComo analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali LinuxEdlaine Zamora
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos WebSergio Henrique
 
OWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken AuthenticationOWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken AuthenticationFernando Galves
 
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...EMERSON EDUARDO RODRIGUES
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de SegurançaAlan Carlos
 
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
 
Segurança e Auditoria de sistemas
Segurança e Auditoria de sistemasSegurança e Auditoria de sistemas
Segurança e Auditoria de sistemasWesley Gimenes
 
Seguranca web Testday2012
Seguranca web Testday2012Seguranca web Testday2012
Seguranca web Testday2012Marcio Cunha
 
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEBFIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEBErick Belluci Tedeschi
 

Similar to OWASP TOP 10 - Web Security (20)

CWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenCWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top Ten
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
 
Saindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações webSaindo do 0x0 sobre segurança em aplicações web
Saindo do 0x0 sobre segurança em aplicações web
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
 
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali LinuxComo analisar a vulnerabilidade de uma aplicação web com o Kali Linux
Como analisar a vulnerabilidade de uma aplicação web com o Kali Linux
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
 
OWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken AuthenticationOWASP Top 10 - A2 2017 Broken Authentication
OWASP Top 10 - A2 2017 Broken Authentication
 
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
 
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
Vulnerabilidades Comuns em Aplicações Web - RoadSec 2023 EMERSON EDUARDO RODR...
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de Segurança
 
Segurança na web
Segurança na webSegurança na web
Segurança na web
 
Segurança em PHP
Segurança em PHPSegurança em PHP
Segurança em PHP
 
OWASP Top 10 e aplicações .Net - Tech-Ed 2007
OWASP Top 10 e aplicações .Net - Tech-Ed 2007OWASP Top 10 e aplicações .Net - Tech-Ed 2007
OWASP Top 10 e aplicações .Net - Tech-Ed 2007
 
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
 
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
 
Segurança e Auditoria de sistemas
Segurança e Auditoria de sistemasSegurança e Auditoria de sistemas
Segurança e Auditoria de sistemas
 
Seguranca web Testday2012
Seguranca web Testday2012Seguranca web Testday2012
Seguranca web Testday2012
 
V SEGINFO - “Auditoria de Aplicações Web”
V SEGINFO - “Auditoria de Aplicações Web”V SEGINFO - “Auditoria de Aplicações Web”
V SEGINFO - “Auditoria de Aplicações Web”
 
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEBFIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
 

Recently uploaded

Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuisKitota
 
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
 
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
 
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
 
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
 
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 - 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
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfSamaraLunas
 

Recently uploaded (8)

Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
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
 
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
 
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
 
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
 
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 - 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
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 

OWASP TOP 10 - Web Security

  • 2.
  • 3. ;10) Redirects e Forwards não validados
  • 4. • Aplicações web geralmente usam redirects e forwards para enviar usuários para outras páginas/sites. Sem a validação necessária, agressores podem redirecionar as vítimas para sites maliciosos OU utilizar forwards para acessar páginas não autorizadas. 10) Redirects e Forwards não validados Como funciona?
  • 6. Como evitar? 1) Evite forwards e redirects 2) Caso realmente sejam necessários, não utilize parâmetros do usuário para “definir” o destino; 3) Se os parâmetros não podem ser evitados (geralmente podem) verifique que o valor informado é válido para o usuário (whitelist) 10) Redirects e Forwards não validados
  • 7. ; 9) Usar componentes com falhas de segurança conhecidas
  • 8. Bibliotecas vulneráveis podem ser exploradas por usuários maliciosos. O impacto de falhas de segurança em bibliotecas/componentes pode variar bastante. 9) Usar bibliotecas com falhas de segurança conhecidas Como funciona?
  • 9. 1) É difícil. 2) Não usar nenhuma biblioteca? 3) Verificar o site/bugzilla/changelog/issues das bibliotecas que estão sendo utilizadas, incluindo as dependências; 4) Manter as bibliotecas atualizadas 9) Usar bibliotecas com falhas de segurança conhecidas Como evitar?
  • 10. ;8) CSRF (Cross-Site Request Forgery)
  • 11. Como funciona? 1) Usuário se autentica normalmente no site exemplo.com.br 2) Sem efetuar logout, o usuário visita o site virus.com.br, que faz uma requisição maliciosa para o site exemplo.com.br 3) Como o usuário ainda está autenticado, caso o site exemplo.com.br não esteja protegido, a requisição funcionará normalmente. 8) CSRF
  • 13. Como evitar? 1) Evitar CSRF geralmente implica em criar uma token em cada requisição HTTP. Essa token dever única e mudar, no mínimo, a cada nova sessão. 2) A token também pode ser incluída na URL (através da query string, mas isso é menos seguro) 3) CAPTCHAs também ajudam a proteger contra CSRF. 8) CSRF
  • 14. ; 7) Falta de verificação de acesso em funcionalidades
  • 15. Como funciona? • Um usuário malicioso simplesmente muda a URL ou muda um parâmetro e acessa uma funcionalidade do sistema que deveria estar bloqueada. 7) Falta de verificação de acesso em funcionalidades
  • 16. Como evitar? 1) O mecanismo de autorização deve, por padrão, negar acesso a uma funcionalidade e só permitir acesso caso o usuário possua a permissão explicitamente definida 2) A maior parte das aplicações não exibem links e botões para telas/rotinas bloqueadas, mas essa validação também deve ser efetuada no Controller ou na lógica de negócio 7) Falta de verificação de acesso em funcionalidades
  • 17. 6) Exposição de dados confidenciais
  • 18. 1) Existe algum dado confidencial (ex.: senhas, número de cartões de crédito) armazenado em texto? 2) A conexão está usando HTTP (ao invés de HTTPS) para transmitir dados confidenciais? 6) Exposição de dados confidenciais
  • 20. Exemplos: 1) Existem recursos desnecessários habilitados ou instalados (ex. portas, serviços, páginas, contas, privilégios)? 2) Os usuários e senhas padrão foram alterados? 3) No caso de erros no sistema, o stack trace é exibido para os usuários (ou qualquer outra informação excessiva)? 4) As configurações padrão de segurança nos frameworks de desenvolvimento (ASP.NET, Spring, Struts) foram alteradas? 5) Configuração incorreta de segurança
  • 21. ; 4) Referências diretas não protegidas
  • 23. 1) Valide o acesso antes de exibir o conteúdo 2) Não utilize referências diretas. Crie referências indiretas que são válidas somente para um usuário ou sessão (map) 4) Referências diretas não protegidas Como evitar?
  • 25. ; 3) XSS (Cross-Site Scripting)
  • 26. • Um usuário malicioso envia texto contendo scripts que serão interpretados pelo browser • Praticamente qualquer fonte de dados pode ser a origem da injeção de scripts: campos de texto, URL, banco de dados • O impacto da injeção de script inclui: roubar sessão, modificar sites (phising), redirecionar usuários, forçar download de arquivos, etc. 3) XSS (Cross-Site Scripting)
  • 27. 1) Nunca confiar em dados fornecidos pelo usuário 2) Fazer escape dos caraceteres que serão exibidos na página/script/url 3) Content-Security-Policy header 4) https://www.owasp.org/index.php/XSS_Filter_Evasion_C heat_Sheet 3) XSS (Cross-Site Scripting) Como evitar?
  • 29. • Autenticação e gerenciamento de sessão é difícil de implementar corretamente; • As aplicações normalmente possuem falhas que permitem usuários maliciosos obter senhas, logins, tokens de sessão ou explorar outras falhas para utilizar a identidade de outro usuário 2) Autenticação/gerenciamento de sessão incorreto
  • 31. 2) Autenticação/gerenciamento de sessão incorreto 1) Senhas não são criptografadas durante o armazenamento 2) Credenciais podem ser adivinhadas, recuperadas ou alteradas através de funções como “esqueci minha senha”, “mudar senha”, etc; 3) Sessions Ids são expostos na URL (URL rewriting) 4) Session ids são vulneráveis a “Session Fixation” 5) Sessão não é invalidada durante o logout ou nunca expira 6) Senhas/session ids são enviados sem criptografia em conexões não criptografadas (ex.: HTTP)
  • 32.
  • 34.
  • 35. RECAPITULANDO... 1) Injection 2) Autenticação/gerenciamento de sessão incorreto 3) XSS (Cross-Site Scripting) 4) Referências diretas não protegidas 5) Configuração incorreta de segurança 6) Exposição de dados confidenciais 7) Falta de verificação de acesso em funcionalidades 8) CSRF (Cross-Site Request Forgery) 9) Usar componentes com falhas de segurança conhecidas 10) Redirects e forwards não validados
  • 36. ; 0) Heart Bleed "Catastrophic is the right word. On the scale of 1 to 10, this is an 11."
  • 38. Referências o https://www.owasp.org o https://www.owasp.org/index.php/Category:OWASP_App lication_Security_Verification_Standard_Project o http://docs.spring.io/spring- security/site/docs/3.2.x/reference/htmlsingle/#csrf o https://freedom-to-tinker.com/blog/wzeller/popular- websites-vulnerable-cross-site-request-forgery-attacks/