Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Criptografia Aplicada

Criptografia Aplicada

O que é criptografia e como funciona no mundo real?

Marcelo Martins

January 20, 2018
Tweet

More Decks by Marcelo Martins

Other Decks in Technology

Transcript

  1. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  2. §  Criptografia é uma palavra de origem grega e tem

    por objetivo o estudo dos princípios e técnicas pelas quais a informação pode ser escondida de forma que se torne incompreensível por pessoas não autorizadas §  O processo de codificação é chamado de encriptação ou cifragem §  O processo inverso, isto é, transformar a informação de modo que ela fique compreensível novamente, se chama decriptação ou decifragem O que é criptografia?
  3. §  Caesar Crypt ou Shift Crypt §  Usada por Júlio

    César para trocar mensagens com seus generais em campo §  É uma cifra baseada em substituição onde cada letra da mensagem é substituída por uma outra letra com uma posição fixa distante no alfabeto §  Por exemplo, com incremento de 3 posições para a direita Clear: ABCDEFGHIJKLMNOPQRSTUVWXYZ Ciphered: DEFGHIJKLMNOPQRSTUVWXYZABC the quick brown fox jumps over the lazy dog WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ O que é criptografia?
  4. §  Caesar Crypt ou Shift Crypt §  O ataque consiste

    em §  O atacante fazer algumas substituições mesmo sem saber que a cifragem de César foi usada §  O atacante sabe que a cifragem de César foi usada, mas não sabe qual é o valor do incremento O que é criptografia?
  5. §  Ataque ao Caesar Crypt ou Shift Crypt O que

    é criptografia? Decremento Candidatos Original exxego ex srgi 1 dwwdfn dw rqfh 2 cvvcem cv qpeg 3 buubdl bu podf 4 attack at once 5 zsszbj zs nmbd 6 yrryai yr mlac ... 23 haahjr ha vujl 24 gzzgiq gz utik 25 fyyfhp fy tshj
  6. §  Objetivos de Segurança da Informação §  Confidencialidade §  Que

    apenas pessoas autorizadas tenham acesso à informação §  Integridade §  Que a informação não seja modificada sem autorização §  Autenticidade e Não-repúdio §  Que seja possível garantir que o remetente enviou aquela mensagem e que isso não possa ser refutado O que é criptografia?
  7. O que é criptografia? §  Criptografia ≠ Esteganografia! §  Esteganografia,

    do grego “escrita escondida”, é o estudo e uso das técnicas para ocultar a existência de uma mensagem dentro de outra. §  Enquanto a criptografia oculta o significado da mensagem, a esteganografia oculta a existência da mensagem §  Geralmente é feita escondendo um arquivo dentro de uma imagem ou arquivo de áudio
  8. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  9. Hash §  É uma sequência de bits gerada por um

    algoritmo de dispersão, em geral representada em base hexadecimal, que permite a visualização em letras e números (0 a 9 e A a F), representando ½ byte cada §  É a transformação de uma grande quantidade de informação em uma pequena quantidade de informação §  Não é possível reverter hashes do tipo one way, ou seja, obter o texto em claro do qual foi gerado
  10. Hash §  Funções de hash mais usadas Nome Bits de

    saída Criado em Colisão* Vulnerável* MD4 128 1990 Sim Sim MD5 128 1991 Sim Sim SHA-1 160 1995 Sim Sim SHA-224 224 2001 Não Não SHA-256 256 2001 Não Não SHA-384 384 2001 Não Não SHA-512 512 2001 Não Não WHIRLPOOL 512 2004 Não Não
  11. Hash §  Exemplo: SHA-512 §  SHA512("The quick brown fox jumps

    over the lazy dog") 07e547d9 586f6a73 f73fbac0 435ed769 51218fb7 d0c8d788 a309d785 436bbb64 2e93a252 a954f239 12547d1e 8a3b5ed6 e1bfd709 7821233f a0538f3d b854fee6 §  SHA512("The quick brown fox jumps over the lazy cog") 3eeee1d0 e11733ef 152a6c29 503b3ae2 0c4f1f3c da4cb26f 1bc1a41f 91c7fe4a b3bd8649 4049e201 c4bd5155 f31ecb7a 3c860684 3c4cc8df cab7da11 c8ae5045
  12. Hash §  Exemplo SHA-1 §  SHA1("The quick brown fox jumps

    over the lazy dog") 2fd4e1c6 7a2d28fc ed849ee1 bb76e739 1b93eb12 §  SHA1("The quick brown fox jumps over the lazy cog") de9f2c7f d25e1b3a fad3e85a 0bd17d9b 100db4b3 §  SHA1("") da39a3ee 5e6b4b0d 3255bfef 95601890 afd80709 A alteração de um bit produz um hash totalmente diferente
  13. Hash §  Aplicações independentes §  HashTab (livre para uso privado,

    Windows) §  http://implbits.com/products/hashtab/ §  MD5, HAVAL, MD2, SHA (1, 256, 384, 512) §  File Checksum Tool (livre para uso privado e comercial, Windows) §  http://www.krylack.com/file-checksum-tool/ §  Adler32, CRC32, MD2, MD4, MD5, RIPEMD (128, 256, 320), SHA (1, 256, 384, 512), Tiger e Whirlpool §  HashCalc (livre para uso privado e comercial, Windows) §  http://www.slavasoft.com/hashcalc/ §  Adler32, CRC32, MD2, MD4, MD5, RIPEMD (128, 256, 320), SHA (1, 256, 384, 512), Tiger e Panama
  14. Hash §  Verificação de integridade de arquivo §  Monitora ou

    verifica se arquivos foram alterados §  Tripwire (Windows/Unix, comercial) §  AIDE (Unix, freeware) §  Yafic (Unix, freeware) §  AFICK (Windows/Unix, freeware) §  nCircle File Integrity Monitoring (Win/Unix, comercial) §  Advanced Checksum Verifier (Windows, comercial) §  Slavasoft FSUM (Windows, freeware) §  Chkrootkit (Unix, freeware) §  Samhain (Unix, freeware)
  15. Hash §  Verificação de integridade de arquivo §  macOS § 

    $ shasum test.jpg (o padrão é SHA1) §  a9b602d039d302867df743ab7dd056e3644bd208 test.jpg §  $ shasum -a512 test.jpg §  e0d4128da441d17ac02c039878a4ac1fae437656b51807b 85c0238deefcfe96bebaedc285edbc3e5d4e18b315b0d1b ce7a47dce130b39645d2372e6003c19fc4 test.jpg
  16. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  17. Criptografia simétrica §  Uma única chave é usada para encriptar

    e decriptar a mensagem §  É chamada de chave simétrica, chave privada ou chave compartilhada §  Os algoritmos mais usados são: AES, Blowfish, DES, Triple DES, Serpent, Twofish DES e 3DES não devem mais ser usados
  18. Criptografia simétrica §  Onde está a segurança da criptografia simétrica?

    §  Depende da segurança da chave privada §  Depende da qualidade da chave privada (assim como uma senha) §  Depende da segurança na troca da chave privada §  Depende da qualidade do método criptográfico (tipos de ataque)
  19. Criptografia simétrica §  Problemas §  Como transmitir a chave para

    o destinatário através de um meio seguro? Telefone? Sinal de fumaça? E-mail sem criptografia? Papel de pão? §  Para que 5 pessoas possam trocar mensagens usando chaves simétricas, quantas chaves seriam necessárias? §  Chaves necessárias ¨  5 usuários ¨  20 usuários n*(n −1) 2 5*(5−1) 2 =10 20*(20 −1) 2 =190
  20. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  21. Criptografia assimétrica §  Cada usuário possui o seu par de

    chaves, uma pública e outra privada §  A chave pública fica disponível para todos e a chave privada somente para o seu dono §  O que é feito com uma chave é desfeito com a outra, do mesmo par
  22. Criptografia assimétrica §  Exemplo de chave assimétrica (PGP) -----BEGIN PGP

    PUBLIC KEY BLOCK----- Version: 2.6.3ia mQCNAzR9bCAAAAEEAMbG7w5W0EJ/L4oAlOgsWwzVmS145eUF6knmOx/UUNBMdNRD DGgJO3z3aAq4nE4yR+3hSO2auiZlB604e006SPV3ZuLpCHuzaet59dHJGmT9adgx DMgaPv5q9CCsZa9B1lhh/SIV2eU4U17FDWfU8QWrimn+nLi/y+kli63F4U8VAAUX tEJDZW50cm8gZGUgQXRlbmRpbWVudG8gYSBJbmNpZGVudGVzIGRlIFNlZ3VyYW5j YSA8Y2Fpc0BjYWlzLnJucC5icj6JAJUDBRA0fWwg6SWLrcXhTxUBAU/WBACclOR+ MC4kGNAKsR7+HujUYC90BYB8QVFcg/jYAWXDMGYxFeCtvw9FQDUtk55B+/i7tdaX 2c4kZrlsjoc3dYROdB7OKDwIxw1pxmeuBBkT+I34i47YNcyRB15otW5sS9BJDb4X jw5YqDDhRCvevUCTczUvAIKSKnzg4Yl1I/JGaQ== =DjRv -----END PGP PUBLIC KEY BLOCK-----
  23. §  Encriptação e decriptação 1.  Chave pública do destinatário é

    obtida 2.  A mensagem é encriptada 3.  A mensagem é transmitida em um meio inseguro 4.  A chave privada do destinatário é usada para decriptar a mensagem 5.  A mensagem original é recuperada Criptografia assimétrica
  24. Criptografia assimétrica §  Assinatura digital §  Processo criptográfico usado para

    garantir a integridade, autenticidade e não-repúdio de uma mensagem ou de um arquivo §  É possível assinar e-mails, arquivos pdf, doc, ppt, dll, exe, etc. §  A assinatura digital, sozinha, não protege o conteúdo da mensagem. Apenas garante a integridade do conteúdo e o seu remetente
  25. §  Encriptação e decriptação 1.  Um hash é gerado a

    partir da mensagem 2.  O hash é encriptado usando a chave privada do remetente 3.  O hash encriptado é obtido 4.  O hash encriptado é adicionado à mensagem 5.  A mensagem é enviada através de meio inseguro 6.  Outro hash é gerado a partir da mensagem 7.  A chave pública do remetente é usada para decriptar o hash enviando anteriormente 8.  O hash original é obtido 9.  Comparação entre ambos os hashes ocorre; se forem iguais a mensagem não foi alterada Assinatura digital
  26. §  Encriptação e decriptação 1.  A chave pública do destinatário

    é obtida 2.  A mensagem é encriptada 3.  Um hash é gerado a partir da mensagem encriptada 4.  O hash é encriptado usando a chave privada do remetente 5.  Um hash encriptado é obtido 6.  O hash encriptado é adicionado à mensagem 7.  A mensagem é enviada em um meio inseguro 8.  Outro hash é gerado a partir da mensagem 9.  A chave pública do remetente é usada para decryptar o hash enviado anteriormente 10.  O hash original é obtido 11.  Comparação entre amos os hashes; se forem iguais a mensagem não foi alterada 12.  A chave privada do destinatário é usada para decriptar a mensagem 13.  A mensagem original é recuperada Encriptação + Assinatura digital
  27. §  Encriptação e decriptação 1.  Uma chave simétrica (chave de

    sessão) ‘gerada aleatoriamente 2.  A mensagem é encriptada usando a chave de sessão 3.  A mensagem encriptada é obtida 4.  A chave pública de Bob é obtida 5.  Uma cópia da chave de sessão é encriptada com a chave pública de Bob 6.  A chave pública de Charlie é obtida 7.  Uma cópia da chave de sessão é encriptada com a chave pública de Charlie 8.  A chave pública do remetente é obtida 9.  A chave de sessão é encriptada com a chave pública do remetente 10.  A chave de sessão encriptada é adicionada à mensagem 11.  A chave de sessão encriptada é adicionada à mensagem 12.  A chave de sessão encriptada é adicionada à mensagem 13.  A mensagem é enviada através de meio inseguro 14.  Charlie usa sua chave privada para obter a chave de sessão 15.  A chave original é obtida 16.  A chave de sessão é usada para decriptar a mensagem 17.  A mensagem original é obtida Envelopamento digital
  28. §  Geração de Hash 1.  O cliente tenta se autenticar

    2.  O servidor gera sequencia de caracteres (Nonce) 3.  Nonce é enviado para o cliente 4.  Cliente usa sua chave privada para encriptar Nonce 5.  Nonce encriptado é obtido 6.  Um hash é gerado a partir do concatenação do Nonce, Nonce encriptado e da senha do cliente 7.  O novo hash é adicionado a um pacote que contém o usuário e o Nonce 8.  O pacote é enviado ao servidor 9.  O servidor gera um hash usando o Nonce original, a senha do cliente armazenada e o Nonce encriptado recebido 10.  Comparação entre ambos os hashes Autenticação (Nonce)
  29. §  Geração de Hash 1.  O cliente tenta se autenticar

    2.  O servidor pede o hash 1000 da senha do cliente 3.  O hash 1000 é gerado e enviado ao servidor. O servidor possui apenas o hash 1000 da senha do usuário, não a senha. Se forem iguais, o usuário está autenticado 4.  O cliente tenta uma nova autenticação 5.  Desta vez o servidor pede o hash 999 da senha do cliente 6.  O hash 999 é gerado e enviado ao servidor. O servidor tem apenas o hash 1000 da senha do usuário. O servidor precisa executar a função de hash no hash 999 para computar o hash 1000. Se forem iguais, o usuário está autenticado. 7.  O servidor então armazena o hash 999 no banco de dados. Na próxima vez o servidor pedirá o hash 998. A segurança vem do fato de que o servidor sempre pede o hash anterior, que só é possível para quem conhece a senha. Autenticação (Hash chain, S/KEY)
  30. VPN

  31. §  Cálculo do Timestamp 1.  Um hash é gerado a

    partir da mensagem 2.  O servidor TSA (TimeStamp Authority) fornece o tempo correto (etiqueta de tempo) 3.  Outro hash é gerado a partir do hash e da etiqueta de tempo 4.  O hash e a etiqueta de tempo são encriptados usando a chave privada do servidor TSA 5.  A etiqueta de tempo é adicionado ao hash encriptado 6.  O hash e a etiqueta de tempo são enviados ao cliente e adicionados à mensagem Trusted Timestamps
  32. Trusted Timestamps §  Verificação do Timestamp 1.  Um hash é

    gerado a partir da mensagem 2.  A etiqueta de tempo adicionada à mensagem é recuperada e um outro hash é gerado a partir do primeiro hash e da etiqueta de tempo 3.  A chave pública do servidor TSA é obtida 4.  O hash original gerado pelo servidor TSA é obtido 5.  Comparação entre ambos os hashes
  33. Criptografia assimétrica §  Onde está a segurança da criptografia assimétrica?

    §  Depende da segurança da chave privada §  Depende da qualidade da senha chave privada (assim como uma senha) §  Depende da qualidade do método criptográfico (tipos de ataque)
  34. Criptografia assimétrica §  Problemas §  Como fazer para que todos

    os usuários tenham acesso a todas as chaves públicas? Todos terão de enviar para todos? E em caso de revogação? Como substituir? §  Como saber se um par de chaves é confiável, ou seja, realmente pertence àquela pessoa?
  35. Criptografia assimétrica §  Problemas §  Como fazer para que todos

    os usuários tenham acesso a todas as chaves públicas? Todos terão de enviar para todos? E em caso de revogação? Como substituir? §  Web of Trust permite designar um revogador §  Como saber se um par de chaves é confiável, ou seja, realmente pertence àquela pessoa? §  Web of Trust depende de uma (ou várias pessoas) que endossem aquela chave e de uma “caminho de confiança” entre as duas pessoas Mas há ainda outros problemas
  36. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  37. Infraestrutura de Chaves Públicas (ICP) §  Certificado digital X.509 v3

    §  Relações de confiança §  Importação e exportação de certificado §  Processo de emissão, verificação e revogação de certificado §  ICP-Brasil
  38. Certificado digital §  Exemplo de certificado X.509 self-signed (parte) Certificate:

    Data: Version: 3 (0x2) Serial Number: 1 (0x1) Signature Algorithm: md5WithRSAEncryption Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc, OU=Certification Services Division, CN=Thawte Server CA/[email protected] Validity Not Before: Aug 1 00:00:00 1996 GMT Not After : Dec 31 23:59:59 2020 GMT Subject: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc, OU=Certification Services Division, CN=Thawte Server CA/[email protected] Subject Public Key Info:
  39. Certificado digital §  Importação de certificado digital N Método #1

    Cuidado: Quando um certificado é instalado (se torna confiável) as aplicações por ele assinadas também se tornam confiáveis
  40. SSL/TLS §  Encriptação e decriptação 1.  O certificado do servidor

    é obtido 2.  O cliente gera uma chave de sessão 3.  A chave de sessão é encriptada usando a chave pública do servidor (contida no certificado) 4.  A chave de sessão encriptada é obtida 5.  A chave de sessão encriptada é enviada através de meio inseguro 6.  O servidor usa sua chave privada para decriptar a chave de sessão 7.  A chave de sessão é obtida 8.  Ambas as partes usam a chave de sessão para encriptar e decriptar mensagens
  41. §  Encriptação e decriptação 1.  O cliente tenta se autenticar

    2.  O servidor gera um Nonce 3.  O Nonce é enviado ao cliente 4.  O cliente usa sua chave privada para encriptar o Nonce 5.  Nonce encriptado é obtido 6.  Nonce encriptado é enviado ao servidor 7.  O servidor usa a chave pública do cliente (contida no certificado do cliente) para decriptar o Nonce 8.  O Nonce original é obtido 9.  Comparação entre os dois Nonces Autenticação (Certificado digital)
  42. Infraestrutura de Chaves Públicas (ICP) §  Aplicações para o certificado

    digital §  E-mail §  VPN §  SSL/HTTPS §  Autenticação §  Criptografia de arquivos (ex: EFS) §  Assinatura digital de arquivos
  43. §  Processo de emissão de certificado digital 1.  O cliente

    pede a Autoridade Registradora (RA) um certificado 2.  A RA informa ao cliente para gerar o par de chaves 3.  As chaves são geradas pelo cliente 4.  A chave privada é gerada dentro do token ou exportada para o token 5.  A chave pública é enviada para a RA 6.  A RA envia a chave pública para a CA junto com as informações do cliente 7.  A CA gera o certificado digital e assina usando sua própria chave privada 8.  O certificado é armazenado na Certificates Store 9.  O certificado é enviado ao cliente 10.  O cliente armazena o certificado no token Infraestrutura de Chaves Públicas (ICP)
  44. Infraestrutura de Chaves Públicas (ICP) §  Server-based Certification Validation Protocol

    (SCVP) §  O processo de construção do certification path se chama discovery path §  A responsabilidade pela construção dessa cadeia de certificados é da aplicação que recebe a mensagem §  Muitas aplicações usam a MS CAPI (Microsoft Crypto API) §  Não é possível construir a cadeia se um dos certificados não for encontrado
  45. Infraestrutura de Chaves Públicas (ICP) §  Programas de inclusão de

    certificados-raiz §  Microsoft Root Certificate Program §  http://technet.microsoft.com/en-us/library/cc751157.aspx §  Apple Root Certificate Program §  http://www.apple.com/certificateauthority/ca_program.html §  Inclusos no iOS 10: https://support.apple.com/en-us/HT207177 §  Google Chromium §  https://www.chromium.org/Home/chromium-security/root-ca-policy §  OpenSSL: não possui §  Mozilla CA Certificate Store §  http://www.mozilla.org/projects/security/certs/ §  Opera §  http://www.opera.com/docs/ca/ §  Mono (open source .NET framework): não possui §  Motivo: http://www.mono-project.com/FAQ:_Security
  46. Infraestrutura de Chaves Públicas (ICP) §  Programa de inclusão de

    certificados-raiz §  Regras gerais §  Não há taxa cobrada §  ISO 21188:2006 - Public key infrastructure for financial services -- Practices and policy framework §  NIST SP 800-57 - Recommendation for Key Management – Part 1: General §  Conformidade com WebTrust Program for Certification Authorities ¨  http://www.webtrust.org/homepage-documents/item27839.aspx §  RFC 3280 - Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
  47. Infraestrutura de Chaves Públicas (ICP) §  Processo de verificação de

    certificado digital §  OCSP (Online Certificate Status Protocol) §  Consulta o OCSP Responder através de protocolo §  Envia apenas o número serial do certificado a ser consultado §  A consulta ocorre em tempo real (ou próximo disso) §  Não expõe o número serial de todos os certificados §  Trafega menos informação, poupando o servidor, a rede e o cliente §  Funciona bem se o cliente fizer cache das consultas §  CRL (Certificate Revocation List) §  Tem que baixar toda a CRL (todo o processo é automático) §  Uma lista pode ter 500KB §  Costuma ser atualizada a cada 24h ou menos §  Quando a lista é alterada precisa ser copiada novamente §  É assinada digitalmente pela CA para evitar falsificações
  48. §  Processo de verificação via OCSP 1.  O cliente tenta

    acessar um servidor web, por exemplo 2.  O servidor web envia seu certificado digital 3.  O cliente (seu sistema operacional) procura no certificado pelo endereço do servidor OCSP e o contata pedindo informações sobre o número serial do certificado 4.  O servidor OCSP responde 5.  Se estiver tudo certo, o cliente continua a conexão A.  O certificado é armazenado na Certificates Store B.  A informação do sobre o número serial do certificado é enviada para o servidor OCSP Infraestrutura de Chaves Públicas (ICP)
  49. Infraestrutura de Chaves Públicas (ICP) §  Processo de verificação de

    certificado digital §  Suporte ao OCSP IE 7+ (exceto no XP), automático Todas as versões, automático Todas as versões, automático da 3+ Opera 8.0+, automático Mac OS X. Todas as versões suportam, mas requer ativação manual até a 10.7
  50. Infraestrutura de Chaves Públicas (ICP) §  Processo de verificação de

    certificado digital §  Suporte ao OCSP MS Outlook 2016: Sim Mozilla Thunderbird: Sim Apple Mail: Sim IBM Lotus Notes: Sim Opera Mail: Sim Seamonkey: Sim The Bat: Sim
  51. §  Processo de revogação de certificado 1.  O cliente pede

    a Autoridade Registradora (RA) para revogar o certificado 2.  A RA, após executar seu processo de verificação, envia as informações para a CA 3.  A CA aceita o pedido de revogação e guarda a informação na Certificates Store 4.  A CA inclui o número serial do certificado revogado na CRL 5.  A CRL é digitalmente assinada usando a chave privada da CA Infraestrutura de Chaves Públicas (ICP)
  52. Infraestrutura de Chaves Públicas (ICP) §  Wildcard certificate §  Certificado

    gerado para proteger vários subdomínios ou servidores §  Geralmente é mais prático e mais econômico §  Exemplo: Certificado emitido para *.empresa.com.br §  Serve para: pagamento.empresa.com.br, contato.empresa.com.br, intranet.empresa.com.br, etc.
  53. Infraestrutura de Chaves Públicas (ICP) §  EV-SSL (Extended Validation) § 

    Verificação ‘completa’ da identidade do solicitante §  Segue as instruções do CA/Browser Forum §  Motivo: pressões comerciais fizeram as CAs fornecerem o certificado “domain validation only” §  Critérios para emissão do EV-SSL §  Verificar documentos e presença física da empresa §  Controle sobre o domínio é exclusivo ao dono §  Confirmar identidade e autoridade dos donos do website §  Suportado por Microsoft IE 7+ (exceto XP), Mozilla Firefox 3+, Opera 8+, Apple Safari 3.2+, Google Chrome
  54. Microsoft Edge: Não faz Esta é toda a informação disponível

    Infraestrutura de Chaves Públicas (ICP)
  55. Infraestrutura de Chaves Públicas (ICP) §  Revogação de certificado digital

    §  Revogação §  Suspensão (temporário) §  Motivos para revogação §  Suspeita ou comprometimento da chave privada §  Suspeita ou comprometimento da CA §  Término da operação §  Término da afiliação §  Revogação e expiração são eventos distintos!
  56. Infraestrutura de Chaves Públicas (ICP) §  Microsoft Crypto API § 

    Presente desde o Windows NT 4.0 §  Serve para acessar também os tokens e os HSMs §  Está presente no .NET Framework e no JDK (SunMSCAPI Provider, apenas como acesso ao MS- CAPI) §  Oracle SunJSSE Provider §  Está presente no JDK §  Capacidade para grande número de ciphersuites
  57. ICP-Brasil §  Criada pela MP 2200-2, de 24.08.2001 §  Objetivo:

    “garantir a autenticidade, a integridade e a validade jurídica de documentos em forma eletrônica, das aplicações de suporte e das aplicações habilitadas que utilizem certificados digitais, bem como a realização de transações eletrônicas seguras.” §  É o cartório virtual §  Está ligada ao ITI e é gerenciada pelo Comitê Gestor da ICP- Brasil §  A AC Raiz não pode emitir certificados para o usuário final §  A estrutura completa pode ser vista em: http://www.iti.gov.br/twiki/bin/view/Certificacao/EstruturaIcp
  58. ICP-Brasil §  Tipos de certificado digital §  A1 §  Gerado

    e armazenado no computador §  Dispensa o uso de cartões inteligentes ou tokens §  Deve-se optar por protegê-lo com uma senha §  Recomenda-se armazenamento em um único computador além de uma cópia de segurança §  Possui validade de 1 ano
  59. ICP-Brasil §  Tipos de certificado digital §  A3 §  Gerado

    e armazenado no cartão inteligente ou token §  Fica protegido pela senha do cartão ou token §  Possui validade de 3 anos
  60. ICP-Brasil §  e-CPF e e-CNPJ §  Garantir a autenticidade e

    a integridade nas transações eletrônicas §  Enviar a declaração do Imposto de Renda via Internet §  Consultar e atualizar o cadastro de contribuinte §  Recuperar o histórico de declarações §  Verificar a situação na “malha fina” §  Cadastrar procurações e acompanhar processos tributários através da Internet §  Encriptar e assinar digitalmente os e-mails!
  61. ICP-Brasil §  e-CPF e e-CNPJ §  Como pode funcionar um

    mecanismo de não-repúdio §  Hash(Data, Hora, CPF, Tipo de Operação, etc.) §  Encriptação(Hash()) com a chave privada §  Armazena no último campo do registro na tabela
  62. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  63. Ataques §  Brute force, dicionários, default passwords §  Rainbow tables

    §  Pass-the-hash §  Recuperação da chave privada §  Comparação de arquivos §  Interceptação do túnel §  Falha no método criptográfico §  Chave simétrica X chave assimétrica
  64. Ataques §  Default passwords list §  http://www.cirt.net/passwords §  Dicionários § 

    http://www.openwall.com/passwords/wordlists/ §  http://lastbit.com/dict.asp §  Gerador de dicionários §  L517 §  http://code.google.com/p/l517/
  65. Ataques §  Brute force §  O atacante tenta todos os

    valores possível em uma determinada faixa de possibilidades. §  Rainbow tables §  Geralmente um conjunto de atacantes se junta para gerar arquivos que contém senhas e seus respectivos hashes §  Assim, quando o hash de uma senha é encontrado não é necessário passar pelo processo de brute force §  É só procurar o hash em questão no arquivo.
  66. Ataques §  Brute force Chave em bits Permutações Tempo de

    brute force para dispositivo verificando 256 permutações/segundo 8 28 0 milissegundos 40 240 0.015 milissegundos 56 256 1 segundo 64 264 4 minutos e 16 segundos 128 2128 149.745.258.842.898 anos 256 2256 50.955.671.114.250.100.000.000.000.000.000. 000.000.000.000.000.000.000 anos Fonte: NIST SP 800-57 Part 1 (2007)
  67. Ataques §  Captura do Hash §  Offline NT Password and

    Registry Editor §  http://pogostick.net/~pnh/ntpasswd/ §  Suporta todas as versões do Windows, do NT 3.5 até Win 8.1, 32 ou 64 bit, a as versões Server (2003, 2008, 2012) §  Com o Windows offline, acessa os arquivos que contém os hashes das contas §  Pode alterar a senha, destravar e habilitar contas! (se o usuário usa o EFS, perderá o acesso aos arquivos) §  Não precisa da senha atual da conta §  Ophcrack, pwdump7 e outros softwares de captura de hashes §  Sniffers como o Wireshark N
  68. Ataques §  Rainbow tables (exemplo) LM #0 Caracteres [ABCDEFGHIJKLMNOPQRSTUVWXYZ] Combinações

    8.353.082.582 Tamanho da tabela 610 MB Probabilidade de sucesso 0.9904 (99.04%) LM #1 Caracteres [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789] Combinações 80.603.140.212 Tamanho da tabela 3 GB Probabilidade de sucesso 0.991 (99.1%)
  69. Ataques §  Rainbow tables (exemplo) LM #5 Caracteres [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$ %^&*()-_+=

    ] Combinações 915.358.891.407 (2 ^ 39.7) Tamanho da tabela 24 GB Probabilidade de sucesso 0.9990 (99,90%) LM #6 Caracteres [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$ %^&*()-_+=~`[]{}|\:;"'<>,.?/ ] Combinações 7.555.858.447.479 (2 ^ 42.8) Tamanho da tabela 64 GB Probabilidade de sucesso 0.9999 (99,99%)
  70. Ataques §  Defesa contra Brute force e Rainbow tables § 

    A senha deve ter um mínimo de 12 caracteres §  Uma senha de 14 letras minúsculas é tão forte quanto uma senha de 10 caracteres que contém minúsculas, maiúsculas, números e símbolos §  Inclua números e símbolos se o sistema permitir §  Se o sistema diferenciar maiúsculas de minúsculas use as duas §  Evite usar a mesma senha em vários locais §  Exemplo: 4pRte!ai@3 – mistura maiúsculas, minúsculas, números e símbolos.
  71. Ataques §  Senhas fracas §  Senhas padrão: password, default, admin,

    guest, etc. §  Dicionário: palavras que existem em qualquer idioma §  Número adicionado: password1, deer2000, john1234, etc. §  Com ofuscação simples: p@ssw0rd, h4cker, h3ll0, etc. §  Dobradas: crabcrab, stopstop, treetree, passpass, etc. §  Sequências comuns de teclado: qwerty, 12345, asdfgh, fred. §  Sequências numéricas conhecidas: 911, 3,14159... (π), 2,7182... (e). §  Identificadores: jsmith123, 1/1/1970, 555–1234, “login”, etc. §  Informações pessoais: placa do carro, números de telefone, aniversário, time favorito, nome de parentes ou animais de estimação, apelidos, etc. requerem apenas uma investigação
  72. Ataques §  Senhas fracas §  Dave Kleiman, perito americano, detectou

    através da análise de 3 milhões de senhas de 8 caracteres que: §  A letra "e" foi usada mais de 1.5 milhão de vezes §  A letra "f" foi usada apenas 250.000 vezes §  Em uma distribuição uniforme cada caracter teria de ser usado cerca de 900.000 vezes §  O número mais comum é o “1” §  As letras mais comuns são “a”, “e”, “o”, “r”
  73. Ataques §  Brute force §  Hashcat: http://hashcat.net/hashcat-gui/ (Windows / Linux)

    §  Ophcrack (Windows, gratuito e comercial) §  LC6 (Windows, comercial) §  John the Ripper (Unix, gratuito) §  Elcomsoft (Windows, comercial) §  Hydra (Unix, gratuito) §  Hashkill (Linux, gratuito) §  PDF: FreewarePDFUnlocker (Windows, gratuito) §  RAR: cRARk (Windows, gratuito) §  Rainbow tables §  OnlineHashCrack: www.onlinehashcrack.com §  Tobtu: www.tobtu.com/md5.php
  74. Ataques §  Distribuição entre estações §  Boinc §  Softwares que

    distribuem a carga §  Aumento de capacidade §  Drives SSD §  GPUs em paralelo §  Aumento da capacidade de processamento §  Desenvolvimento para GPUs §  http://developer.nvidia.com/cuda-tools-ecosystem §  http://developer.amd.com/pages/default.aspx
  75. Ataques §  Defesa contra Replay Attacks §  1. One Time

    Password (OTP) §  É gerado a partir de um algorítmo aberto §  Mesmo sabendo o número anterior, não é possível prever o próximo §  É possível utilizar de forma manual ou automática, através de software §  2. Nonce §  3. Timestamps
  76. Ataques §  Recuperação da chave privada §  Recuperação de chave

    privada gerada no disco e exportada para o token USB, por exemplo §  Comparação de arquivos §  Quando o atacante tem a versão encriptada e a versão “em claro”, é possível “comparar” as duas e obter a chave usada, em alguns casos
  77. Ataques §  Chave simétrica X chave assimétrica §  Em 1977

    o DES de 56 bits era suficiente §  O governo americano requer chave AES (simétrica) de 192 ou 256 bits para conteúdo altamente sensível §  O guia de boas práticas do NIST para gerenciamento de chaves sugere que chaves RSA de 15360 bits RSA são equivalentes em força a chaves simétricas de 256 bits!
  78. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  79. Esteganografia §  História §  Origem do grego steganos (στεγανός), “escondido

    ou protegido”, e graphei (γράφη), “escrita” §  Segurança através de obscuridade §  Mensagens escritas na área do envelope coberta pelo selo postal §  Durante e depois da Segunda Guerra, agentes de espionagem usavam microdots produzidos fotograficamente para enviar e receber informações §  Hoje é usada para esconder watermarks em imagens, vídeos e áudios para proteger a propriedade intelectual
  80. §  Métodos mais usados §  LSB (Bits menos significativos) R

    G B R G B pixels 0 1 1 0 0 1 0 1 1 1 0 1 imagem original 8 bits / byte imagem RGB = 3 bytes / pixel 1 0 1 1 Esteganografia
  81. p u b 112 117 98 string 0 0 0

    1 1 1 0 1 1 1 0 0 8 bits / byte 1 byte / char texto a ser escondido 0 0 1 1 §  Métodos mais usados §  LSB (Bits menos significativos) Esteganografia
  82. 0 0 0 1 1 1 0 1 1 1

    0 0 0 0 1 1 0 1 1 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 1 0 1 1 0 1 1 imagem modificada §  Métodos mais usados §  LSB (Bits menos significativos) Esteganografia
  83. Esteganografia 0 1 0 1 1 0 0 1 0

    1 1 1 0 1 1 0 1 1 imagem modificada Recuperação texto original §  Métodos mais usados §  LSB (Bits menos significativos)
  84. Esteganografia §  Métodos mais usados §  Alta frequência §  Áudio

    com qualidade de CD tem 44.100 Hz §  Possuem frequência efetiva de 22.050 Hz §  Os humanos conseguem distinguir sons de 15 Hz até 15.000 ou 20.000 Hz (dependendo do indivíduo). Os que escutam até 20.000 Hz não conseguem distinguir muito bem as frequências mais altas §  É possível alterar a informação nas altas frequências de um som e o resultado ser imperceptível
  85. Esteganografia §  JPEG Original §  SHA-1: 2ebd0b60f51e38f0f0 1224e017e650e7b80f cd1f § 

    JPEG Modificado §  SHA-1: 254f2ed072beab5c3a 52c12281c48df5d0e4 8ddc
  86. Esteganografia §  Aplicações da Esteganografia §  Terrorismo §  Espionagem § 

    Fingerprinting §  Watermark §  Esteganálise §  Comparação com o arquivo original §  Análise estatística de arquivos do mesmo dispositivo §  Análise de noise em busca de modificação nos bits menos significantes
  87. Agenda §  O que é criptografia? §  Hash §  Criptografia

    simétrica §  Criptografia assimétrica §  Infraestrutura de Chaves Públicas (ICP) §  Ataques §  Esteganografia §  Boas práticas: uso doméstico §  Referências
  88. Boas práticas: uso doméstico §  Certificado digital nível 1 (A1)

    gratuito §  Instant SSL: www.instantssl.com §  Aloaha: www.aloaha.com §  CACert.org: www.cacert.org §  Certificado digital ICP-Brasil §  Certisign §  Serasa Experian §  OAB (para advogados) §  ... §  VeraCrypt
  89. Referências §  Coursera / Stanford University §  Cryptography I § 

    Prof. Dan Boneh §  https://www.coursera.org/learn/crypto/
  90. Referências §  ISO/IEC 18014 — Time-stamping services §  ISO/IEC 13888

    — Non-repudiation §  ISO/IEC 10118 — Hash-functions §  ISO/IEC 27002 — Information technology - Security techniques - Code of practice for information security management §  ISO/IEC 19790 — Security Requirements §  for Cryptographic Modules
  91. Referências Algoritmo criptográfico Special Publications ou FIPS Triple Data Encryption

    Standard (TDES) SP 800-67, Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher, and SP 800-38A, Recommendation for Block Cipher Modes of Operation – Methods and Techniques Advanced Encryption Standard (AES) FIPS 197, Advanced Encryption Standard, and SP 800-38A Digital Signature Standard (DSS) FIPS 186-3, Digital Signature Standard (DSS), dated June 2009 RSA algorithm ANSI X9.31 and Public Key Cryptography Standards (PKCS) #1 v2.1: RSA Cryptography Standard-2002 Hashing algorithms SHA-1, SHA-224, SHA- 256, SHA-384, and SHA-512 FIPS 180-3, Secure Hash Standard (SHS), dated October 2008