THE WebSec
2016
“ALCANÇAR QUALQUER OBJETIVO NA PRESENÇA DE ALGUM ADVERSÁRIO”
SEGURANÇA?!
SEGURANÇA
➤ POLÍTICA
➤ OBJETIVOS COMUNS
➤ MODELO DE AMEAÇA
➤ MECANISMO
➤ OBJETIVO RESULTANTE
PLANO DE ALTO NÍVEL SOBRE SEG...
SEGURANÇA
➤ SARAH PALIN’S EMAIL ACCOUNT
[HTTP://EN.WIKIPEDIA.ORG/WIKI/SARAH_PALIN_EMAIL_HACK]
ALGUNS EXEMPLOS DE FALHAS DE...
SEGURANÇA
“VÁRIOS SISTEMAS SEGUROS SIGNIFICAM BAIXOS
RISCOS/CONSEQUÊNCIAS DE VÁRIAS AÇÕES, JÁ
SISTEMAS INSEGUROS, PODEM NE...
“UM RISCO É O CAMINHO ENTRE UM ADVERSÁRIO E O IMPACTO DE
NEGÓCIOS DE SUA APLICAÇÃO.”
RISCO?!
RISCOS DE SEGURANÇA
RISCOS DE SEGURANÇA
Agente da
Ameaça
Vetor de Ataque Vulnerabilidade Impactos Técnicos
Impactos de
Negócios
Fácil
Especifi...
RISCO
1. INJEÇÃO
2. QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO
3. CROSS-SITE-SCRIPTING
4. REFERÊNCIA INSEGURA E DIRE...
Agente da
Ameaça
Vetor de Ataque Vulnerabilidade Impactos Técnicos
Impactos de
Negócios
Exploração
Fácil
Prevalência
Comum...
AS FALHAS DE INJEÇÃO OCORREM QUANDO UMA APLICAÇÃO ENVIA
DADOS NÃO CONFIÁVEIS PARA UM INTERPRETADOR
A1 - INJEÇÃO
OWASP
Open...
OWASP
Open Web Application
Security Project
ATACANTES MANIPULAM PARÂMETROS PARA INJETAR TRECHOS DE CÓDIGOS
http://example....
1. A OPÇÃO PREFERIDA É UTILIZAR UMA API SEGURA QUE EVITE O
USO DO INTERPRETADOR INTEIRAMENTE OU FORNEÇA UMA
INTERFACE PARA...
SOLUÇÃO
2. SE UMA API PARAMETRIZADA NÃO ESTIVER DISPONÍVEL, VOCÊ DEVE
CUIDADOSAMENTE FILTRAR OS CARACTERES ESPECIAIS UTILI...
A2 -QUEBRA DE AUTENTICAÇÃO E
GERENCIAMENTO DE SESSÃO
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de...
A2 -QUEBRA DE AUTENTICAÇÃO E
GERENCIAMENTO DE SESSÃO
OWASP
Open Web Application
Security Project
OS DESENVOLVEDORES FREQUE...
A2 -QUEBRA DE AUTENTICAÇÃO E
GERENCIAMENTO DE SESSÃO
OWASP
Open Web Application
Security Project
ESSES ESQUEMAS PERSONALIZ...
OWASP
Open Web Application
Security Project
UMA APLICAÇÃO DE RESERVAS DE PASSAGENS AÉREAS SUPORTA REESCRITA DE
URL, COLOCA...
SOLUÇÃO
UM CONJUNTO ÚNICO DE CONTROLES FORTES DE AUTENTICAÇÃO E
GERENCIAMENTO DE SESSÃO. TAIS CONTROLES DEVEM PROCURAR:
A)...
SOLUÇÃO
UM CONJUNTO ÚNICO DE CONTROLES FORTES DE AUTENTICAÇÃO E
GERENCIAMENTO DE SESSÃO. TAIS CONTROLES DEVEM PROCURAR:
B)...
A3 - CROSS-SITE SCRIPTING
(XSS)
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de Ataque Vulnerabilida...
OWASP
Open Web Application
Security Project
XSS É A MAIS PREDOMINANTE FALHA DE SEGURANÇA EM APLICAÇÕES WEB. AS
FALHAS DE X...
OWASP
Open Web Application
Security Project
UM APLICATIVO WEB QUE RECEBA UM PARÂMETRO “NOME” CONTENDO A
IDENTIFICAÇÃO DO U...
OWASP
Open Web Application
Security Project
UM APLICATIVO WEB QUE RECEBA UM PARÂMETRO “NOME” CONTENDO A
IDENTIFICAÇÃO DO U...
OWASP
Open Web Application
Security Project
A3 - CROSS-SITE SCRIPTING
(XSS)
SOLUÇÃO
EVITAR XSS REQUER A SEPARAÇÃO DO DADO NÃO-CONFIÁVEL DO
CONTEÚDO ATIVO NO NAVEGADOR.
OWASP
Open Web Application
Sec...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A3 - CROSS-SITE SCRIPTING
(XSS)
1. A OPÇÃO APROPRIADA É FILTRAR ADEQUA...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A3 - CROSS-SITE SCRIPTING
(XSS)
2. “LISTA BRANCA" OU VALIDAÇÃO DE ENTR...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A3 - CROSS-SITE SCRIPTING
(XSS)
3. CONSIDERE A CONTENT SECURITY POLICY...
A4 - REFERÊNCIA INSEGURA E
DIRETA A OBJETOS
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de Ataque V...
OWASP
Open Web Application
Security Project
APLICAÇÕES FREQUENTEMENTE USAM O NOME REAL OU A CHAVE DE UM
OBJETO AO GERAR PÁ...
OWASP
Open Web Application
Security Project
ATACANTES MANIPULAM PARÂMETROS DE MANEIRA A ALTERAR AS REFERÊNCIAS,
CONSEGUIND...
SOLUÇÃO
1. USO DE REFERÊNCIA INDIRETAS A OBJETOS POR USUÁRIO OU SESSÃO.
ISSO IMPEDE QUE O ATACANTE ATINJA DIRETAMENTE OS R...
SOLUÇÃO
POR EXEMPLO:
OWASP
Open Web Application
Security Project
A4 - REFERÊNCIA INSEGURA E
DIRETA A OBJETOS
EM VEZ DE UTI...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A4 - REFERÊNCIA INSEGURA E
DIRETA A OBJETOS
2. VERIFICAR O ACESSO. CAD...
A5 - CONFIGURAÇÃO
INCORRETA DE SEGURANÇA
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de Ataque Vuln...
OWASP
Open Web Application
Security Project
CONFIGURAÇÕES INCORRETAS PODEM ACONTECER EM QUALQUER NÍVEL
DA PILHA DA APLICAÇ...
OWASP
Open Web Application
Security Project
O console de administração do servidor de aplicação é instalado
automaticament...
SOLUÇÃO
1. UM PROCESSO DE HARDENING RECORRENTE QUE TORNE FÁCIL E RÁPIDO
DE IMPLANTAR OUTRO AMBIENTE QUE ESTÁ DEVIDAMENTE B...
SOLUÇÃO
2. UM PROCESSO PARA SE MANTER A PAR E IMPLANTAR TODAS AS
NOVAS ATUALIZAÇÕES E CORREÇÕES DE SOFTWARE EM TEMPO HÁBIL...
SOLUÇÃO
3. UMA ARQUITETURA DE APLICAÇÃO FORTE QUE FORNEÇA A
SEPARAÇÃO SEGURA E EFICAZ ENTRE OS COMPONENTES.
OWASP
Open Web...
A6 - EXPOSIÇÃO DE DADOS
SENSÍVEIS
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de Ataque Vulnerabili...
OWASP
Open Web Application
Security Project
A FALHA MAIS COMUM É SIMPLESMENTE NÃO CRIPTOGRAFAR DADOS
SENSÍVEIS. QUANDO A C...
OWASP
Open Web Application
Security Project
Um site simplesmente não usa SSL em todas as páginas
autenticadas. O atacante ...
SOLUÇÃO
1. CONSIDERANDO QUE VOCÊ PRETENDE PROTEGER OS DADOS DE
AMEAÇAS (COMO POR EXEMPLO, ATAQUE INTERNO OU DE USUÁRIO
EXT...
SOLUÇÃO
2. NÃO ARMAZENE DADOS SENSÍVEIS DESNECESSARIAMENTE.
DESCARTE-OS O MAIS RÁPIDO POSSÍVEL. DADOS QUE VOCÊ NÃO TEM NÃO...
SOLUÇÃO
3. CERTIFIQUE-SE QUE O NÍVEL UTILIZADO NOS ALGORITMOS E CHAVES
SÃO FORTES, E QUE O GERENCIAMENTO DE CHAVES ESTÁ AP...
SOLUÇÃO
4. CERTIFIQUE-SE QUE AS SENHAS SÃO ARMAZENADAS COM UM
ALGORITMO PROJETADO ESPECIALMENTE PARA A PROTEÇÃO DE SENHAS,...
SOLUÇÃO
5. DESABILITE O AUTOCOMPLETAR EM FORMULÁRIOS DE COLETA DE
DADOS SENSÍ- VEIS E DESABILITE O CACHE EM PÁGINAS QUE CO...
A7 - FALTA DE FUNÇÃO PARA
CONTROLE DO NÍVEL DE ACESSO
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor d...
OWASP
Open Web Application
Security Project
APLICAÇÕES NEM SEMPRE PROTEGEM ADEQUADAMENTE AS FUNÇÃO DE
APLICAÇÃO. ÀS VEZES,...
OWASP
Open Web Application
Security Project
http://example.com/app/getappInfo
http://example.com/app/admin_getappInfo
O AT...
SOLUÇÃO
1. PENSE SOBRE O PROCESSO PARA GERENCIAR OS DIREITOS E
GARANTIR QUE VOCÊ POSSA ATUALIZAR E AUDITAR FACILMENTE. NÃO...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A7 - FALTA DE FUNÇÃO PARA
CONTROLE DO NÍVEL DE ACESSO
3. SE A FUNÇÃO E...
A8 - CROSS-SITE REQUEST
FORGERY (CSRF)
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de Ataque Vulner...
OWASP
Open Web Application
Security Project
O CSRF SE APROVEITA DO FATO DE QUE A MAIORIA DAS APLICAÇÕES WEB
PERMITEM QUE O...
OWASP
Open Web Application
Security Project
http://exemplo.com/app/transferirFundos?quantia=1500
&contaDestino=4673243243
...
OWASP
Open Web Application
Security Project
<img src="http://exemplo.com/app/transferirFundos?
quantia=1500&contaDestino=c...
OWASP
Open Web Application
Security Project
SE A VÍTIMA VISITAR QUALQUER UM DOS SITES DO ATACANTE ENQUANTO
ESTIVER AUTENTI...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A PREVENÇÃO DE UM CSRF GERALMENTE REQUER A INCLUSÃO DE UM TOKEN
IMPREV...
SOLUÇÃO
OWASP
Open Web Application
Security Project
1. A OPÇÃO PREFERIDA CONSISTE EM INCLUIR UM TOKEN ÚNICO EM UM CAMPO
OC...
SOLUÇÃO
OWASP
Open Web Application
Security Project
2. O TOKEN ÚNICO PODE SER INCLUÍDO NA PRÓPRIA URL, OU EM
PARÂMETROS DA...
A9 - UTILIZAÇÃO DE COMPONENTES
VULNERÁVEIS CONHECIDOS
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor d...
OWASP
Open Web Application
Security Project
VIRTUALMENTE TODAS APLICAÇÕES POSSUEM ESTES PROBLEMAS
PORQUE A MAIORIA DOS TIM...
SOLUÇÃO
OWASP
Open Web Application
Security Project
MUITOS PROJETOS DE COMPONENTES NÃO CRIAM CORREÇÕES DE
VULNERABILIDADES...
SOLUÇÃO
OWASP
Open Web Application
Security Project
A) IDENTIFICAR TODOS OS COMPONENTES E AS VERSÕES QUE VOCÊ ESTÁ
UTILIZA...
SOLUÇÃO
OWASP
Open Web Application
Security Project
B) MONITORAR A SEGURANÇA DESSES COMPONENTES EM BANCO DE DADOS
PÚBLICOS...
SOLUÇÃO
OWASP
Open Web Application
Security Project
C) ESTABELECER POLÍTICAS DE SEGURANÇA QUE DEFINAM O USO DO
COMPONENTE,...
OWASP
Open Web Application
Security Project
Agente da
Ameaça
Vetor de Ataque Vulnerabilidade Impactos Técnicos
Impactos de...
OWASP
Open Web Application
Security Project
APLICAÇÕES FREQUENTEMENTE REDIRECIONAM USUÁRIOS PARA OUTRAS
PÁGINAS, OU USAM E...
OWASP
Open Web Application
Security Project
A APLICAÇÃO POSSUI UMA PÁGINA CHAMADA “REDIRECT.JSP” QUE RECEBE
APENAS UM PARÂ...
SOLUÇÃO
OWASP
Open Web Application
Security Project
USO SEGURO DE REDIRECIONAMENTOS E ENCAMINHAMENTOS PODE SER
FEITO DE VÁ...
SOLUÇÃO
OWASP
Open Web Application
Security Project
1. SIMPLESMENTE EVITAR USÁ-LOS.
2. SE FOREM USADOS, NÃO ENVOLVA PARÂME...
THE WebSec
2016
BIBLIOGRÁFIA
INTRODUÇÃO: MIT HTTP://OCW.MIT.EDU/COURSES/
ELECTRICAL-ENGINEERING-AND-COMPUTER-SCIENCE/
6-85...
THE WebSec
2016
Próximos SlideShares
Carregando em…5
×

THE WebSec

178 visualizações

Publicada em

Seminário sobre Segurança de Aplicações WEB, durante a disciplina de Programação para Internet, IFPI; 27.04.2016.

Publicada em: Software
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
178
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
2
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

THE WebSec

  1. 1. THE WebSec 2016
  2. 2. “ALCANÇAR QUALQUER OBJETIVO NA PRESENÇA DE ALGUM ADVERSÁRIO” SEGURANÇA?!
  3. 3. SEGURANÇA ➤ POLÍTICA ➤ OBJETIVOS COMUNS ➤ MODELO DE AMEAÇA ➤ MECANISMO ➤ OBJETIVO RESULTANTE PLANO DE ALTO NÍVEL SOBRE SEGURANÇA
  4. 4. SEGURANÇA ➤ SARAH PALIN’S EMAIL ACCOUNT [HTTP://EN.WIKIPEDIA.ORG/WIKI/SARAH_PALIN_EMAIL_HACK] ALGUNS EXEMPLOS DE FALHAS DE SEGURANÇA ➤ MAT HONAN'S ACCOUNTS AT AMAZON, APPLE, GOOGLE, ETC. [HTTP://WWW.WIRED.COM/GADGETLAB/2012/08/APPLE-AMAZON-MAT-HONAN-HACKING/ALL/]
  5. 5. SEGURANÇA “VÁRIOS SISTEMAS SEGUROS SIGNIFICAM BAIXOS RISCOS/CONSEQUÊNCIAS DE VÁRIAS AÇÕES, JÁ SISTEMAS INSEGUROS, PODEM NECESSITAR DE UM GERENCIAMENTO DE ATAQUES MANUAL” RISCO VS BENEFÍCIO
  6. 6. “UM RISCO É O CAMINHO ENTRE UM ADVERSÁRIO E O IMPACTO DE NEGÓCIOS DE SUA APLICAÇÃO.” RISCO?!
  7. 7. RISCOS DE SEGURANÇA
  8. 8. RISCOS DE SEGURANÇA Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Fácil Especifico da Aplicação Especifico do Negócio/ Aplicação Média Difícil Generalizada Comum Rara Fácil Média Difícil Severo Moderado Pequeno
  9. 9. RISCO 1. INJEÇÃO 2. QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO 3. CROSS-SITE-SCRIPTING 4. REFERÊNCIA INSEGURA E DIRETA A OBJETOS 5. CONFIGURAÇÃO INCORRETA DE SEGURANÇA 6. EXPOSIÇÃO DE DADOS SENSÍVEIS 7. FALTA DE FUNÇÃO PARA CONTROLE DE NÍVEL DE ACESSO 8. CROSS-SITE-REQUEST-FORGERY 9. UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS 10. REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS TOP 10 RISCOS OWASP Open Web Application Security Project
  10. 10. Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Fácil Prevalência Comum Detecção Médio Impacto Severo OWASP Open Web Application Security Project A1 - INJEÇÃO
  11. 11. AS FALHAS DE INJEÇÃO OCORREM QUANDO UMA APLICAÇÃO ENVIA DADOS NÃO CONFIÁVEIS PARA UM INTERPRETADOR A1 - INJEÇÃO OWASP Open Web Application Security Project PROBLEMA
  12. 12. OWASP Open Web Application Security Project ATACANTES MANIPULAM PARÂMETROS PARA INJETAR TRECHOS DE CÓDIGOS http://example.com/app/accountView?id=' or '1'='1 A1 - INJEÇÃO
  13. 13. 1. A OPÇÃO PREFERIDA É UTILIZAR UMA API SEGURA QUE EVITE O USO DO INTERPRETADOR INTEIRAMENTE OU FORNEÇA UMA INTERFACE PARAMETRIZADA. SOLUÇÃO A1 - INJEÇÃO OWASP Open Web Application Security Project
  14. 14. SOLUÇÃO 2. SE UMA API PARAMETRIZADA NÃO ESTIVER DISPONÍVEL, VOCÊ DEVE CUIDADOSAMENTE FILTRAR OS CARACTERES ESPECIAIS UTILIZANDO A SINTAXE PARA ESSE INTERPRETADOR. OWASP’S ESAPI FORNECE MUITAS DESSAS ROTINAS DE FILTRAGEM. 
 A1 - INJEÇÃO OWASP Open Web Application Security Project
  15. 15. A2 -QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Média Prevalência Generalizada Detecção Média Impacto Severo
  16. 16. A2 -QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO OWASP Open Web Application Security Project OS DESENVOLVEDORES FREQUENTEMENTE IMPLEMENTAM A AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO EM SUAS APLICAÇÕES DE FORMA PERSONALIZADA, MAS A IMPLEMENTAÇÃO CORRETA É DIFÍCIL. PROBLEMA
  17. 17. A2 -QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO OWASP Open Web Application Security Project ESSES ESQUEMAS PERSONALIZADOS FREQUENTEMENTE POSSUEM FALHAS EM ÁREAS DO SISTEMA COMO LOGOUT, GESTÃO DE SENHAS, TEMPO DE EXPIRAÇÃO, "LEMBRAR SENHA", PERGUNTA SECRETA, ATUALIZAR CONTA, ETC. PROBLEMA
  18. 18. OWASP Open Web Application Security Project UMA APLICAÇÃO DE RESERVAS DE PASSAGENS AÉREAS SUPORTA REESCRITA DE URL, COLOCANDO IDS DE SESSÃO NA URL: ENVIAR O LINK POR E-MAIL… http://example.com/sale/saleitems;jsessionid=2P0OC2JSNDLPSK HCJUN2JV?dest=Hawaii A2 -QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO
  19. 19. SOLUÇÃO UM CONJUNTO ÚNICO DE CONTROLES FORTES DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO. TAIS CONTROLES DEVEM PROCURAR: A)  CUMPRIR TODOS OS REQUISITOS DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO DEFINIDOS NO PADRÃO DE VERIFICAÇÃO DE SEGURANÇA DA APLICAÇÃO DO OWASP (ASVS), ÁREAS V2 (AUTENTICAÇÃO) E V3 (GERENCIAMENTO DE SESSÃO). OWASP Open Web Application Security Project A2 -QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO
  20. 20. SOLUÇÃO UM CONJUNTO ÚNICO DE CONTROLES FORTES DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO. TAIS CONTROLES DEVEM PROCURAR: B)  TER UMA INTERFACE SIMPLES PARA OS DESENVOLVEDORES. CONSIDERE O ESAPI AUTHENTICATOR E USER APIS COMO BONS EXEMPLOS PARA SIMULAR, USAR OU CONSTRUIR COMO BASE. OWASP Open Web Application Security Project A2 -QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO
  21. 21. A3 - CROSS-SITE SCRIPTING (XSS) OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Média Prevalência Generalizada Detecção Média Impacto Moderado
  22. 22. OWASP Open Web Application Security Project XSS É A MAIS PREDOMINANTE FALHA DE SEGURANÇA EM APLICAÇÕES WEB. AS FALHAS DE XSS OCORREM QUANDO UMA APLICAÇÃO INCLUI OS DADOS FORNECIDOS PELO USUÁRIO NA PÁGINA, ENVIADOS AO NAVEGADOR, SEM A VALIDAÇÃO OU FILTRO APROPRIADOS DESSE CONTEÚDO PROBLEMA A3 - CROSS-SITE SCRIPTING (XSS)
  23. 23. OWASP Open Web Application Security Project UM APLICATIVO WEB QUE RECEBA UM PARÂMETRO “NOME” CONTENDO A IDENTIFICAÇÃO DO USUÁRIO LEGÍTIMO E APRESENTE O CONTEÚDO SEM QUAISQUER FILTROS: http://www.vul.site/welcome.html?name=fulano echo ‘<h1>Olá usuário ‘ + getParameter(‘name’) + ‘</h1>'; A3 - CROSS-SITE SCRIPTING (XSS)
  24. 24. OWASP Open Web Application Security Project UM APLICATIVO WEB QUE RECEBA UM PARÂMETRO “NOME” CONTENDO A IDENTIFICAÇÃO DO USUÁRIO LEGÍTIMO E APRESENTE O CONTEÚDO SEM QUAISQUER FILTROS: http://www.example.com/welcome.html?name=<script>alert(document.cookie)</ script> echo ‘<h1>Olá usuário ‘ + getParameter(‘name’) + ‘</h1>'; A3 - CROSS-SITE SCRIPTING (XSS)
  25. 25. OWASP Open Web Application Security Project A3 - CROSS-SITE SCRIPTING (XSS)
  26. 26. SOLUÇÃO EVITAR XSS REQUER A SEPARAÇÃO DO DADO NÃO-CONFIÁVEL DO CONTEÚDO ATIVO NO NAVEGADOR. OWASP Open Web Application Security Project A3 - CROSS-SITE SCRIPTING (XSS)
  27. 27. SOLUÇÃO OWASP Open Web Application Security Project A3 - CROSS-SITE SCRIPTING (XSS) 1. A OPÇÃO APROPRIADA É FILTRAR ADEQUADAMENTE TODOS OS DADOS NÃO- CONFIÁVEIS COM BASE NO CONTEXTO HTML (CORPO, ATRIBUTO, JAVASCRIPT, CSS OU URL) NO QUAL OS DADOS SERÃO COLOCADOS.
  28. 28. SOLUÇÃO OWASP Open Web Application Security Project A3 - CROSS-SITE SCRIPTING (XSS) 2. “LISTA BRANCA" OU VALIDAÇÃO DE ENTRADA TAMBÉM É RECOMENDADA POIS AJUDA A PROTEGER CONTRA XSS, MAS NÃO É UMA DEFESA COMPLETA, JÁ QUE MUITAS APLICAÇÕES REQUEREM CARACTERES ESPECIAIS EM SUA ENTRADA. TAL VALIDAÇÃO DEVE, TANTO QUANTO POSSÍVEL, VALIDAR O TAMANHO, CARACTERES, FORMATO, E AS REGRAS DE NEGÓCIO SOBRE OS DADOS ANTES DE ACEITAR A ENTRADA. 

  29. 29. SOLUÇÃO OWASP Open Web Application Security Project A3 - CROSS-SITE SCRIPTING (XSS) 3. CONSIDERE A CONTENT SECURITY POLICY (CSP) PARA SE DEFENDER CONTRA XSS EM TODO O SEU SITE. 

  30. 30. A4 - REFERÊNCIA INSEGURA E DIRETA A OBJETOS OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Fácil Prevalência Comum Detecção Fácil Impacto Moderado
  31. 31. OWASP Open Web Application Security Project APLICAÇÕES FREQUENTEMENTE USAM O NOME REAL OU A CHAVE DE UM OBJETO AO GERAR PÁGINAS WEB. APLICAÇÕES NEM SEMPRE VERIFICAM SE O USUÁRIO É AUTORIZADO PARA O OBJETO ALVO. ISTO RESULTA NUMA FALHA DE REFERÊNCIA INSEGURA E DIRETA A UM OBJETO. PROBLEMA A4 - REFERÊNCIA INSEGURA E DIRETA A OBJETOS
  32. 32. OWASP Open Web Application Security Project ATACANTES MANIPULAM PARÂMETROS DE MANEIRA A ALTERAR AS REFERÊNCIAS, CONSEGUINDO ASSIM ACESSO A DIRETÓRIOS OU OUTROS RECURSOS DA APLICAÇÃO. Tal código pode ser atacado usando uma string como “../../../../ etc/passwd%00” A4 - REFERÊNCIA INSEGURA E DIRETA A OBJETOS
  33. 33. SOLUÇÃO 1. USO DE REFERÊNCIA INDIRETAS A OBJETOS POR USUÁRIO OU SESSÃO. ISSO IMPEDE QUE O ATACANTE ATINJA DIRETAMENTE OS RECURSOS NÃO AUTORIZADOS. OWASP Open Web Application Security Project A4 - REFERÊNCIA INSEGURA E DIRETA A OBJETOS
  34. 34. SOLUÇÃO POR EXEMPLO: OWASP Open Web Application Security Project A4 - REFERÊNCIA INSEGURA E DIRETA A OBJETOS EM VEZ DE UTILIZAR A CHAVE DE BANCO DE DADOS DO RECURSO, UMA LISTA DE SEIS RECURSOS AUTORIZADOS PARA O USUÁRIO ATUAL PODERIA UTILIZAR OS NÚMEROS DE 1 A 6 PARA INDICAR QUAL VALOR O USUÁRIO SELECIONOU. A APLICAÇÃO TEM QUE MAPEAR AS REFERÊNCIAS INDIRETAS POR USUÁRIO DE VOLTA PARA A CHAVE DO BANCO DE DADOS REAL NO SERVIDOR.
  35. 35. SOLUÇÃO OWASP Open Web Application Security Project A4 - REFERÊNCIA INSEGURA E DIRETA A OBJETOS 2. VERIFICAR O ACESSO. CADA UTILIZAÇÃO DE UMA REFERÊNCIA DIRETA A OBJETO DE UMA ORIGEM NÃO CONFIÁVEL DEVE INCLUIR UMA VERIFICAÇÃO DE CONTROLE DE ACESSO PARA GARANTIR QUE O USUÁRIO ESTÁ AUTORIZADO PARA O OBJETO REQUISITADO.
  36. 36. A5 - CONFIGURAÇÃO INCORRETA DE SEGURANÇA OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Fácil Prevalência Comum Detecção Fácil Impacto Moderado
  37. 37. OWASP Open Web Application Security Project CONFIGURAÇÕES INCORRETAS PODEM ACONTECER EM QUALQUER NÍVEL DA PILHA DA APLICAÇÃO, INCLUINDO A PLATAFORMA, SERVIDOR WEB, SERVIDOR DE APLICAÇÃO, BANCO DE DADOS, FRAMEWORK E CÓDIGO PERSONALIZADO. PROBLEMA A5 - CONFIGURAÇÃO INCORRETA DE SEGURANÇA
  38. 38. OWASP Open Web Application Security Project O console de administração do servidor de aplicação é instalado automaticamente e não é removido. Contas padrão não são alteradas. Atacantes descobrem as páginas padrão de administração que estão em seu servidor, fazem login com senhas padrão e assumem o acesso do ambiente. A5 - CONFIGURAÇÃO INCORRETA DE SEGURANÇA
  39. 39. SOLUÇÃO 1. UM PROCESSO DE HARDENING RECORRENTE QUE TORNE FÁCIL E RÁPIDO DE IMPLANTAR OUTRO AMBIENTE QUE ESTÁ DEVIDAMENTE BLINDADO. AMBIENTES DE DESENVOLVIMENTO, CONTROLE DE QUALIDADE E PRODUÇÃO DEVEM SER TODOS CONFIGURADOS DE FORMA IDÊNTICA (COM SENHAS DIFERENTES USADAS EM CADA AMBIENTE). ESTE PROCESSO DEVE SER AUTOMATIZADO PARA MINIMIZAR O ESFORÇO NECESSÁRIO PARA CONFIGURAR UM NOVO AMBIENTE SEGURO. OWASP Open Web Application Security Project A5 - CONFIGURAÇÃO INCORRETA DE SEGURANÇA
  40. 40. SOLUÇÃO 2. UM PROCESSO PARA SE MANTER A PAR E IMPLANTAR TODAS AS NOVAS ATUALIZAÇÕES E CORREÇÕES DE SOFTWARE EM TEMPO HÁBIL E EM PARA CADA AMBIENTE. ESTE PROCESSO, DEVE INCLUIR TODAS AS BIBLIOTECAS DE CÓDIGO (VER NOVO A9). OWASP Open Web Application Security Project A5 - CONFIGURAÇÃO INCORRETA DE SEGURANÇA
  41. 41. SOLUÇÃO 3. UMA ARQUITETURA DE APLICAÇÃO FORTE QUE FORNEÇA A SEPARAÇÃO SEGURA E EFICAZ ENTRE OS COMPONENTES. OWASP Open Web Application Security Project A5 - CONFIGURAÇÃO INCORRETA DE SEGURANÇA
  42. 42. A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Difícil Prevalência Rara Detecção Média Impacto Severo
  43. 43. OWASP Open Web Application Security Project A FALHA MAIS COMUM É SIMPLESMENTE NÃO CRIPTOGRAFAR DADOS SENSÍVEIS. QUANDO A CRIPTOGRAFIA É UTILIZADA, A GERAÇÃO E GERENCIAMENTO DE CHAVES É FRACA, ALÉM DA UTILIZAÇÃO DE ALGORITMOS E TÉCNICAS DE HASHING FRACOS. PROBLEMA A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  44. 44. OWASP Open Web Application Security Project Um site simplesmente não usa SSL em todas as páginas autenticadas. O atacante simplesmente monitora o tráfego de rede (como uma rede wireless aberta), e rouba o cookie de sessão do usuário. O atacante então reproduz este cookie e sequestra a sessão do usuário, acessando dados privados do mesmo. A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  45. 45. SOLUÇÃO 1. CONSIDERANDO QUE VOCÊ PRETENDE PROTEGER OS DADOS DE AMEAÇAS (COMO POR EXEMPLO, ATAQUE INTERNO OU DE USUÁRIO EXTERNO), TENHA A CERTEZA DE CRIPTOGRAFAR TODOS OS DADOS SENSÍVEIS EM REPOUSO E EM TRÂNSITO DE UMA FORMA QUE INIBA ESTAS AMEAÇAS. OWASP Open Web Application Security Project A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  46. 46. SOLUÇÃO 2. NÃO ARMAZENE DADOS SENSÍVEIS DESNECESSARIAMENTE. DESCARTE-OS O MAIS RÁPIDO POSSÍVEL. DADOS QUE VOCÊ NÃO TEM NÃO PODEM SER ROUBADOS. OWASP Open Web Application Security Project A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  47. 47. SOLUÇÃO 3. CERTIFIQUE-SE QUE O NÍVEL UTILIZADO NOS ALGORITMOS E CHAVES SÃO FORTES, E QUE O GERENCIAMENTO DE CHAVES ESTÁ APLICADO ADEQUADAMENTE. CONSIDERE UTILIZAR OS MÓDULOS CRIPTOGRÁFICOS VALIDADOS DO FIPS-140. OWASP Open Web Application Security Project A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  48. 48. SOLUÇÃO 4. CERTIFIQUE-SE QUE AS SENHAS SÃO ARMAZENADAS COM UM ALGORITMO PROJETADO ESPECIALMENTE PARA A PROTEÇÃO DE SENHAS, COMO O BCRYPT, PBKDF2 OU SCRYPT. OWASP Open Web Application Security Project A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  49. 49. SOLUÇÃO 5. DESABILITE O AUTOCOMPLETAR EM FORMULÁRIOS DE COLETA DE DADOS SENSÍ- VEIS E DESABILITE O CACHE EM PÁGINAS QUE CONTENHAM DADOS SENSÍVEIS. OWASP Open Web Application Security Project A6 - EXPOSIÇÃO DE DADOS SENSÍVEIS
  50. 50. A7 - FALTA DE FUNÇÃO PARA CONTROLE DO NÍVEL DE ACESSO OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Fácil Prevalência Comum Detecção Médio Impacto Moderado
  51. 51. OWASP Open Web Application Security Project APLICAÇÕES NEM SEMPRE PROTEGEM ADEQUADAMENTE AS FUNÇÃO DE APLICAÇÃO. ÀS VEZES, A PROTEÇÃO EM NÍVEL DE FUNÇÃO É GERENCIADA VIA CONFIGURAÇÃO, E O SISTEMA É MAL CONFIGURADO. ÀS VEZES, DESENVOLVEDORES DEVEM INCLUIR VERIFICAÇÕES DE CÓDIGO ADEQUADAS, E ELES ESQUECEM. PROBLEMA A7 - FALTA DE FUNÇÃO PARA CONTROLE DO NÍVEL DE ACESSO
  52. 52. OWASP Open Web Application Security Project http://example.com/app/getappInfo http://example.com/app/admin_getappInfo O ATACANTE SIMPLESMENTE FORÇA A NAVEGAÇÃO PELAS URLS ALVO. AS SEGUINTES URLS EXIGEM AUTENTICAÇÃO. DIREITOS DE ADMINISTRADOR TAMBÉM SÃO EXIGIDOS PARA ACESSAR A PÁGINA “ADMIN_GETAPPINFO” . A7 - FALTA DE FUNÇÃO PARA CONTROLE DO NÍVEL DE ACESSO
  53. 53. SOLUÇÃO 1. PENSE SOBRE O PROCESSO PARA GERENCIAR OS DIREITOS E GARANTIR QUE VOCÊ POSSA ATUALIZAR E AUDITAR FACILMENTE. NÃO CODIFIQUE DIRETAMENTE. 2. A EXECUÇÃO DE MECANISMOS DEVE NEGAR TODO O ACESSO POR PADRÃO, EXIGINDO DIREITOS EXPLÍCITOS PARA PAPÉIS ESPECÍFICOS NO ACESSO A TODAS AS FUNÇÕES. OWASP Open Web Application Security Project A7 - FALTA DE FUNÇÃO PARA CONTROLE DO NÍVEL DE ACESSO
  54. 54. SOLUÇÃO OWASP Open Web Application Security Project A7 - FALTA DE FUNÇÃO PARA CONTROLE DO NÍVEL DE ACESSO 3. SE A FUNÇÃO ESTÁ ENVOLVIDA EM UM FLUXO DE TRABALHO, VERIFIQUE, PARA TER CERTEZA, SE AS CONDIÇÕES ESTÃO EM ESTADO ADEQUADO PARA PERMITIR ACESSO. 

  55. 55. A8 - CROSS-SITE REQUEST FORGERY (CSRF) OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Médio Prevalência Comum Detecção Fácil Impacto Moderado
  56. 56. OWASP Open Web Application Security Project O CSRF SE APROVEITA DO FATO DE QUE A MAIORIA DAS APLICAÇÕES WEB PERMITEM QUE OS ATACANTES PREVEJAM TODOS OS DETALHES DE UMA AÇÃO PARTICULAR DA APLICAÇÃO. COMO OS NAVEGADORES AUTOMATICAMENTE TRAFEGAM CREDENCIAIS COMO COOKIES DE SESSÃO, OS ATACANTES PODEM CRIAR PÁGINAS WEB MALICIOSAS QUE GERAM REQUISIÇÕES FORJADAS INDISTINGUÍVEIS DAS LEGÍTIMAS. PROBLEMA A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  57. 57. OWASP Open Web Application Security Project http://exemplo.com/app/transferirFundos?quantia=1500 &contaDestino=4673243243 A APLICAÇÃO PERMITE QUE UM USUÁRIO SUBMETA UMA REQUISIÇÃO DE MUDANÇA DE ESTADO QUE NÃO INCLUI QUALQUER SEGREDO. POR EXEMPLO: A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  58. 58. OWASP Open Web Application Security Project <img src="http://exemplo.com/app/transferirFundos? quantia=1500&contaDestino=contaAtacante#“ width="0" height="0" /> COM ISSO, O ATACANTE CONSTRÓI UMA REQUISIÇÃO QUE IRÁ TRANSFERIR DINHEIRO DA CONTA DA VÍTIMA PARA A CONTA DO ATACANTE, E ENTÃO INCORPORA ESTE ATAQUE EM UMA REQUISIÇÃO ARMAZENADA EM UMA IMAGEM OU IFRAME EM VÁRIOS SITES SOB O CONTROLE DO ATACANTE: A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  59. 59. OWASP Open Web Application Security Project SE A VÍTIMA VISITAR QUALQUER UM DOS SITES DO ATACANTE ENQUANTO ESTIVER AUTENTICADO EM EXEMPLO.COM, ESSAS REQUISIÇÕES FORJADAS IRÃO INCLUIR AUTOMATICAMENTE INFORMAÇÕES DE SESSÃO DO USUÁRIO, AUTORIZANDO O PEDIDO DO ATACANTE. A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  60. 60. SOLUÇÃO OWASP Open Web Application Security Project A PREVENÇÃO DE UM CSRF GERALMENTE REQUER A INCLUSÃO DE UM TOKEN IMPREVISÍVEL EM CADA REQUISIÇÃO HTTP. TAIS TOKENS DEVEM, NO MÍNIMO, SER ÚNICOS POR SESSÃO DE USUÁRIO. A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  61. 61. SOLUÇÃO OWASP Open Web Application Security Project 1. A OPÇÃO PREFERIDA CONSISTE EM INCLUIR UM TOKEN ÚNICO EM UM CAMPO OCULTO. ISSO FAZ COM QUE O VALOR SEJA ENVIADO NO CORPO DA REQUISIÇÃO HTTP, EVITANDO-SE A SUA INSERÇÃO NA URL, QUE É MAIS PROPENSA A EXPOSIÇÃO. A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  62. 62. SOLUÇÃO OWASP Open Web Application Security Project 2. O TOKEN ÚNICO PODE SER INCLUÍDO NA PRÓPRIA URL, OU EM PARÂMETROS DA URL. CONTUDO, TAL POSICIONAMENTO CORRE UM RISCO MAIOR JÁ QUE A URL SERÁ EXPOSTA AO ATACANTE, COMPROMETENDO ASSIM O TOKEN SECRETO A8 - CROSS-SITE REQUEST FORGERY (CSRF)
  63. 63. A9 - UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Médio Prevalência Generalizada Detecção Difícil Impacto Moderado
  64. 64. OWASP Open Web Application Security Project VIRTUALMENTE TODAS APLICAÇÕES POSSUEM ESTES PROBLEMAS PORQUE A MAIORIA DOS TIMES DE DESENVOLVIMENTO NÃO FOCAM EM GARANTIR QUE SEUS COMPONENTES E/OU BIBLIOTECAS ESTEJAM ATUALIZADOS. EM MUITOS CASOS, OS DESENVOLVEDORES SEQUER CONHECEM TODOS OS COMPONENTES QUE ESTÃO USANDO, MUITO MENOS SUAS VERSÕES. PROBLEMA A9 - UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS
  65. 65. SOLUÇÃO OWASP Open Web Application Security Project MUITOS PROJETOS DE COMPONENTES NÃO CRIAM CORREÇÕES DE VULNERABILIDADES PARA VERSÕES ANTIGAS. EM VEZ DISSO, É MAIS SIMPLES CORRIGIR O PROBLEMA NA PRÓXIMA VERSÃO. ENTÃO ATUALIZAR PARA ESSAS NOVAS VERSÕES É CRÍTICO. PROJETOS DE SOFTWARE DEVEM TER PROCESSOS PARA: A9 - UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS
  66. 66. SOLUÇÃO OWASP Open Web Application Security Project A) IDENTIFICAR TODOS OS COMPONENTES E AS VERSÕES QUE VOCÊ ESTÁ UTILIZANDO, INCLUINDO TODAS AS DEPENDÊNCIAS. (EX., VERSÕES DOS PLUGINS). A9 - UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS
  67. 67. SOLUÇÃO OWASP Open Web Application Security Project B) MONITORAR A SEGURANÇA DESSES COMPONENTES EM BANCO DE DADOS PÚBLICOS, LISTAS DE E-MAIL DE PROJETOS E SEGURANÇA, E MANTÊ-LOS ATUALIZADOS. A9 - UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS
  68. 68. SOLUÇÃO OWASP Open Web Application Security Project C) ESTABELECER POLÍTICAS DE SEGURANÇA QUE DEFINAM O USO DO COMPONENTE, ASSIM COMO EXIGIR CERTAS PRÁTICAS DE DESENVOLVIMENTO DE SOFTWARE, PASSANDO EM TESTES DE SEGURANÇA, E LICENÇAS ACEITÁVEIS. A9 - UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS
  69. 69. OWASP Open Web Application Security Project Agente da Ameaça Vetor de Ataque Vulnerabilidade Impactos Técnicos Impactos de Negócios Exploração Médio Prevalência Rara Detecção Fácil Impacto Moderado A10 -REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS
  70. 70. OWASP Open Web Application Security Project APLICAÇÕES FREQUENTEMENTE REDIRECIONAM USUÁRIOS PARA OUTRAS PÁGINAS, OU USAM ENCAMINHAMENTOS INTERNOS DE UMA MANEIRA SIMILAR. POR VEZES A PÁGINA DE DESTINO É ESPECIFICADA ATRAVÉS DE UM PARÂMETRO QUE NÃO É VALIDADO, PERMITINDO QUE O ATACANTE ESCOLHA ESSA PÁGINA DE DESTINO. PROBLEMA A10 -REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS
  71. 71. OWASP Open Web Application Security Project A APLICAÇÃO POSSUI UMA PÁGINA CHAMADA “REDIRECT.JSP” QUE RECEBE APENAS UM PARÂMETRO “URL”. O ATACANTE CRIA UMA URL MALICIOUSA QUE REDIRECIONA OS USUÁRIOS PARA O SITE MALICIOSO, QUE EXECUTA PHISHING E INSTALA MALWARE. http://www.example.com/redirect.jsp?url=evil.com A10 -REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS
  72. 72. SOLUÇÃO OWASP Open Web Application Security Project USO SEGURO DE REDIRECIONAMENTOS E ENCAMINHAMENTOS PODE SER FEITO DE VÁRIAS FORMAS: A10 -REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS
  73. 73. SOLUÇÃO OWASP Open Web Application Security Project 1. SIMPLESMENTE EVITAR USÁ-LOS. 2. SE FOREM USADOS, NÃO ENVOLVA PARÂMETROS DO USUÁRIO NO CÁLCULO 
 DO DESTINO. NORMALMENTE, ISTO PODE SER FEITO. 3. SE OS PARÂMETROS DE DESTINO NÃO PODEM SER EVITADOS, TENHA 
 CERTEZA QUE O VALOR FORNECIDO É VÁLIDO, E AUTORIZADO PARA O USUÁRIO. A10 -REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS
  74. 74. THE WebSec 2016 BIBLIOGRÁFIA INTRODUÇÃO: MIT HTTP://OCW.MIT.EDU/COURSES/ ELECTRICAL-ENGINEERING-AND-COMPUTER-SCIENCE/ 6-858-COMPUTER-SYSTEMS-SECURITY-FALL-2014/ LECTURE-NOTES/ PRINCIPAIS ERROS: OWASP HTTPS://WWW.OWASP.ORG/ INDEX.PHP/TOP_10_2013-TOP_10 CSRF: CAELUM HTTP://BLOG.CAELUM.COM.BR/PROTEGENDO- SUA-APLICACAO-WEB-CONTRA-CROSS-SITE-REQUEST- FORGERYCSRF/
  75. 75. THE WebSec 2016

×