THE WebSec

205 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
205
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
4
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

×