A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

SEGURANÇA DE APLICAÇÕES NA WEB Aluno: Thiago Augusto Lopes Genez Orientador: Prof. Dr. Mario Lemes Proença Jr. U NIVERSIDADE E STADUAL DE L ONDRINA D EPARTAMENTO.

Apresentações semelhantes


Apresentação em tema: "SEGURANÇA DE APLICAÇÕES NA WEB Aluno: Thiago Augusto Lopes Genez Orientador: Prof. Dr. Mario Lemes Proença Jr. U NIVERSIDADE E STADUAL DE L ONDRINA D EPARTAMENTO."— Transcrição da apresentação:

1 SEGURANÇA DE APLICAÇÕES NA WEB Aluno: Thiago Augusto Lopes Genez Orientador: Prof. Dr. Mario Lemes Proença Jr. U NIVERSIDADE E STADUAL DE L ONDRINA D EPARTAMENTO DE C OMPUTAÇÃO T RABALHO DE C ONCLUSÃO DE C URSO

2 S UMÁRIO Introdução Conceitos Básicos de Segurança Os Ataques Algoritmos Criptográficos Protocolos de Segurança Identificação Digital Ferramentas de Auditoria de Segurança Conclusão

3 I NTRODUÇÃO Aplicação WEB: Acessada por um navegador WEB Meio de comunicação O canal é inseguro Internet Comércio Eletrônico ( E-commerce ) Transações Bancárias ( Banking on-line )

4 I NTRODUÇÃO Necessidade da Segurança Falta de segurança básica facilita os ataques Cada dia novos ataques são descobertos Consequência dos ataques Divulgação dos dados confidenciais Quebra do sigilo Perda da confiabilidade pelo usuário. Interrupção do serviço; transações fraudulentas; roubo ou modificação de dados

5 I NTRODUÇÃO Soluções: Criptografia; Protocolos criptográficos; Identificação digital; Ferramentas de auditoria. Objetivo Garantir que as informações mantenham-se intactas e protegidas durante a sua transmissão na Internet. Garantir um ambiente WEB seguro.

6 C ONCEITOS B ÁSICOS DE S EGURANÇA Serviços disponibilizados pela segurança: Autenticação Confidencialidade Integridade Não-repúdio Controle de Acesso Disponibilidade

7 C ONCEITOS B ÁSICOS DE S EGURANÇA C ARACTERÍSTICAS DOS ATAQUES Comportamento dos ataques

8 A TAQUES Motivos dos ataque na WEB Páginas dinâmicas Código executados no cliente (script client-side) Problema: Entrada dos dados não são tratados Dados armazenados em Cookies Tipos de Ataques na WEB: 1. Ataque de força bruta 2. Ataque do Homem do Meio (Man-in-the-middle) 3. XSS (Cross Site Scripting) 4. Injeção SQL

9 A TAQUES 5. CSRF (Cross-site reference forgery) 6. Phishing 7. DNS Spoofing 8. Clickjacking 9. Negação de Serviço (DoS)

10 A LGORITMOS C RIPTOGRÁFICOS Origem etimológica grega: Ckryptós escondido Gráphein escrever. Objetivo: Texto legível Cifra texto ilegível Divididos em: Simétrico Assimétrico Hash

11 A LGORITMOS C RIPTOGRÁFICOS S IMÉTRICOS AlgoritmoBlocoChaveInformações RC4Fluxo bits Internet Banking Caixa Econômica Federal, Banco do Brasil, Itaú RC bits bits Chave 64 quebrada, chave 72 bits segura RC6128 bits bits Ficou no 4° colocado do AES DES64 bits Defasado, 1998 quebrado por hardware TDES64 bits168 bits Comércio eletrônico PayPal AES bits 2001-Rijndael, pagseguro (UOL) Blowfish64 ou 128 bits128 bits Plataforma OpenBSD Twofish bits256 bits Ficou no 3° colocado do AES Serpent bits Ficou no 2° colocado do AES

12 A LGORITMOS C RIPTOGRÁFICOS A SSIMÉTRICOS AlgoritmoForneceChaveInformações RSA Criptografia Assinatura digital Troca de Chaves bits Utilizado na maioria dos certificados digitais Diffie- Hellman Troca de chaves bits Necessita de mecanismo extra para garantir autenticidade DSAAssinatura Digital1024 bits Proposto em 1991 para ser o padrão para assinaturas digitais ECC Criptografia Assinatura digital Troca de Chaves bits Desafiar e concorrer o RSA. Usado no DNSCurve ECDSAAssinatura Digital160 bitsConcorrente ao DSA

13 A LGORITMOS C RIPTOGRÁFICOS F UNÇÕES H ASH AlgoritmoTamanho HashInformações MD5128 bitsNão é resistente a colisão (2008) MD6512 bits Não avançou para a segunda fase do concurso SHA-3 em julho 2009 SHA-1160 bitsNão é resistente a colisão SHA-2 224, 256, 384, 512 bits Nenhum tipo de ataque foi relatado e a partir de 2010 todas agencias federais USA tem que substituir o SHA-1 para SHA-2 SHA-3 224, 256, 384, 512 bits Concurso proposto pela NIST. (andamento na 2° fase, resultado sairá em 2012)

14 P ROTOCOLOS DE S EGURANÇA ProtocolosAçãoForneceInformações SSL/TLS Entre as camadas de Transporte e a camada de aplicação Criptografia (três tipos), Certificados Digitais Podem acoplar protocolos de alto nível: Ex, HTTPS Ponto a Ponto IPsec Na camada de Rede (pacote IP criptografado) Autenticação, Criptografia e Gerenciamento de chaves Integrado no IPv6 Proteção nativa para todos os protocolos acima da camada de rede WS-Security Camada de aplicaçãoCriptografia XML Assinatura XML Web Services SOAP Fim a Fim DNSSec Serviço DNSAutenticação Protege ataques DNS Spoofing (Falso DNS) DNSCurve Serviço DNSAutenticação Criptografia Protege ataques DoS

15 P ROTOCOLOS DE S EGURANÇA SSL/TLS X WS-S ECURITY Informação está segura no canal Protege toda a mensagem Comunicação ponto a ponto Garante a segurança em todos os estágio da comunicação Protege somente as porções da mensagem que precisa de segurança Comunicação fim a fim

16 I DENTIFICAÇÃO D IGITAL Transações eletrônicas: Integridade, autenticidade e confidencialidade Assinatura Digital Bloco de dados criptografado anexado a mensagem Fornece: Autenticação, Integridade e Não repúdio Não garante a confidencialidade

17 I DENTIFICAÇÃO D IGITAL C ERTIFICADO D IGITAL Distribuir as chaves públicas de pessoas físicas e/ou jurídicas de forma segura. Autoridade Certificadora (AC) Terceiro Confiável

18 F ERRAMENTAS DE A UDITORIA DE S EGURANÇA Protocolos não garante a proteção na lógica da aplicação Vulnerabilidade do software Entrada dados não são validados deixa a aplicação instável Disponibilizar os Cookies do browser Ferramentas de auditoria Age como: Homem do meio Manipulações dos pedidos e respostas HTTP/HTTPS Testa a segurança na camada de aplicação Minimiza as vulnerabilidades

19 F ERRAMENTAS DE A UDITORIA DE S EGURANÇA Funções\Ferramenta RatProxy Web Scarab Paros Burp Proxy w3af IBM AppScan Licença Livre Sim NãoSimNão Multiplataforma Sim Não Manipula pedidos/resposta HTTP(S) NãoSim Relatório detalhado SimNãoSim Sugestão para Correção Não Sim Suporte SSL/TLS Sim XSS, Injeção SQL, CSRF Sim Análise de Cookies Sim Análise de dados ocultos Não SimNão Sim Análise RESTful NãoSim NãoSimNão Ambiente Desenvolvimento Não Sim

20 S OLUÇÕES AOS A TAQUES AtaqueMeio Proteção Força Bruta Lista Negra, Captcha,Criptografia Assimétrica Homem do Meio SSL/TSL, WS-Security, Certificado Digital, HTTPS, IPSec XSS (Cross Site Scripting) Validando a entrada dados (Nível de aplicação: auditoria de código) Injeção SQL Validando a entrada dados (Nível de aplicação: auditoria de código) CSRF (Cross-site reference forgery) Validando a entrada dados (Nível de aplicação: auditoria de código) Phishing Validando a entrada dados (Nível de aplicação: auditoria de código) DNS SpoofingDNSCurve, DNSSec, IPSec Clickjacking Validando a entrada dados (Nível de aplicação: auditoria de código) Negação de Serviço (DoS)Lista Negra, DNSCurve

21 C ONCLUSÃO Base da segurança: Criptografia Comunicação entre usuário final e a aplicação WEB: Navegador WEB (browser) Canal é inseguro Internet Solução: Protocolos Criptográficos Outra solução: identificação digital

22 C ONCLUSÃO Com a falta de proteção na lógica da aplicação WEB Entrada de dados não validados Deixa a aplicação WEB instável facilita os ataques Ferramentas de auditoria procura as vulnerabilidades Aplicação WEB segura: Segurança na camada de transporte Segurança na camada de aplicação (lógica de programação)

23 O BRIGADO

24 UM MÓDULO DE SEGURANÇA PARA AUXILIAR A COMUNICAÇÃO ENTRE APLICAÇÕES QUE UTILIZAM REDES Aluno: Thiago Augusto Lopes Genez Orientador: Prof. Dr. Mario Lemes Proença Jr. U NIVERSIDADE E STADUAL DE L ONDRINA D EPARTAMENTO DE C OMPUTAÇÃO R ELATÓRIO DE E STÁGIO C URRICULAR

25 S UMÁRIO Introdução Terminologia Engenharia do Software Arquitetura Ferramentas utilizadas Visão Conceitual Exemplo de uso em uma aplicação WEB

26 I NTRODUÇÃO Módulo Nome: The Rock (A Rocha) Desenvolvido em Java Camada de segurança Autenticação, Autorização, Criptografia e Gerenciamento de Sessão Configurações pré estabelecidas Configurações customizadas Implementas as interfaces Objetivo Auxiliar a comunicação entre aplicações que utilizam redes Promover a reusabilidade de código

27 T ERMINOLOGIA Domínio ( Realm ): Banco de dados o qual armazena os componentes para identificar as entidades da aplicação Nome do usuário, permissões, papéis Sujeito ( Subject ) Representação de um usuário a ser gerenciado pelo módulo Coleção de atributos ( Principals ) Coleção de atributos que identifica o usuário no módulo Nome ID (identificador) IP

28 T ERMINOLOGIA Credenciais Informações secretas conhecida apenas pelo usuário usado para verificar a sua identidade Permissão Representação atômica da capacidade de executar uma ação Papéis ( Roles ) Conjuntos de permissões

29 E NGENHARIA DO S OFTWARE Metodologia baseada: ICONIX Modelo de Domínio Modelo de Caso de Uso Diagrama de Sequencia

30 E NGENHARIA DO S OFTWARE M ODELO DE D OMÍNIO

31 A RQUITETURA

32 F ERRAMENTAS UTILIZADAS JAAS: API para autorização e autenticação em Java JCA e JCE: API de criptografia em Java SLF4J: API de Logs em Java Eclipse: Ambiente de desenvolvimento Subversion: Controle de versão Apache Maven: Ferramenta para gerenciamento e automação de projetos em Java. JUnit: API para realizar testes da linguagem Java

33 V ISÃO CONCEITUAL

34 E XEMPLO DE USO EM UMA APLICAÇÃO WEB

35 E XEMPLO DE USO EM UMA APLICAÇÃO WEB C OMO USAR ? Criar um.jar do módulo The Rock Adicionar o.jar na aplicação WEB que o utilizará Configurar o arquivo web.xml Determinar o The Rock como o filtro principal Indicar qual o domínio que contem os usuários Indicar quais página da aplicação que o usuário deve estar autenticado Indicar quais página da aplicação que o usuário pode acessar Utilizar as classes desenvolvidas Implementar as interfaces configuração customizada

36 E XEMPLO DE USO EM UMA APLICAÇÃO WEB W EB. XML TheRockFilter... [main] realm = dao.RealmMySql [filters] roles.naoAutorizado = /naoAutorizado.jsp [urls] /admin/** = authc, roles[admin] /restrita/** =authc... TheRockFilter /*

37 E XEMPLO DE USO EM UMA APLICAÇÃO WEB T AGS C USTOMIZADAS JSP

38 O BRIGADO


Carregar ppt "SEGURANÇA DE APLICAÇÕES NA WEB Aluno: Thiago Augusto Lopes Genez Orientador: Prof. Dr. Mario Lemes Proença Jr. U NIVERSIDADE E STADUAL DE L ONDRINA D EPARTAMENTO."

Apresentações semelhantes


Anúncios Google