From 3ce489cc93b25f11cd8180d75bb609f5e35d93d8 Mon Sep 17 00:00:00 2001 From: Silvio Date: Mon, 5 Dec 2011 10:34:56 -0200 Subject: Renaming --- index.html | 566 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 566 insertions(+) create mode 100644 index.html (limited to 'index.html') diff --git a/index.html b/index.html new file mode 100644 index 0000000..72f42b0 --- /dev/null +++ b/index.html @@ -0,0 +1,566 @@ + + + + + Convergence e Monkeysphere: chaves para gestão SSL distribuída + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+ +
+

Convergence e Monkeysphere: chaves para gestão SSL distribuída - Co0l - Ed. 2

Duas alternativas viáveis para substituir ou complementar o atual cartel das +Autoridades Certificadoras utilizadas na pilha SSL/TLS.

+ + +
+
+

Propósito

De 2008 até o momento, foram reveladas falhas fundamentais em vários protocolos +básicos da internet:

+ + + +

Estamos falando principalmente de falhas de especificação e não de implementação ou DoS, o que é muito +mais difícil de mitigar.

+ + +
+
+

SSL: Breve histórico

Pontos principais de um protocolo seguro:

+ +
    +
  1. Sigilo: a informação não será lida por terceiros.
  2. +
  3. Integridade: a informação não será adulterada.
  4. +
  5. Autenticidade: os pontos da comunicação serão verificados.
  6. +
  7. Disponibilidade: proteção a DoS, etc.
  8. +
  9. Anonimato.
  10. +
+ + +
+
+

SSL: Breve histórico (cont)

No caso do SSL/TLS:

+ +
    +
  1. Sigilo: +
      +
    • Criptografia usando chaves assimétricas.
    • +
    • Troca de chaves: RSA or Diffie-Hellman (usem DHE!)
    • +
    +
  2. +
  3. Integridade: MAC Digest (hash)
  4. +
  5. Autenticidade: Certificados
  6. +
+ + +
+
+

SSL

+ + +
+
+

Autoridades certificadoras

    +
  • Sistema PKI em x509 (ITU-T - 1998): atrela uma chave pública a um nome (domínio, email, etc)
  • +
  • Árvore hierárquica de certificação
  • +
  • 2009: Relatório da Netcraft
  • +
  • 2010: Verisign: operação de CA vendida por US$1.28 bi para a Symantec
  • +
  • “Two big to fail”
  • +
+ + +
+
+

Netcraft (2009)

+

Netcraft - Linha do Tempo +Netcraft - Fatias do Bolo

+
+ + +
+
+

Como me torno uma autoridade certificadora?

Depende dos processos de inclusão

+ +
    +
  • Pelo fabricante da aplicação ou biblioteca
  • +
  • Pelo distribuidor da aplicação ou biblioteca
  • +
  • O usuário pode incluir manualmente
  • +
+ +

Quanto mais upstream for a inclusão, maior a ubiquidade. Certificados não-instalados +são considerados como autoassinados.

+ +
    +
  • Exemplo: o caso do http://www.cacert.org, uma CA Comunitária
  • +
  • Mozilla: https://www.mozilla.org/projects/security/certs/included/
  • +
  • ICP-Brasil: http://www.iti.gov.br
  • +
+ + +
+
+

CA: Procedimentos

    +
  • Mozilla - https://wiki.mozilla.org/CA:How_to_apply
  • +
  • Opera - http://www.opera.com/docs/ca/
  • +
  • M$ - http://technet.microsoft.com/en-us/library/cc751157.aspx (desatualizado)
  • +
  • Safari - https://www.apple.com/certificateauthority/ca_program.html
  • +
  • Chromium - NSS (GNU/Linux)
  • +
+ + +
+
+

CA: Em geral

    +
  • +

    Há pouca transparência na relação entre CAs e fabricantes de software

    +
  • +
  • +

    Sem gestão multissetorial

    +
  • +
  • +

    Admins de instituições pequenas não tem outra escolha senão utilizar esses CAs

    +
  • +
  • +

    As CAs são confiadas exatamente por serem CAs. Onde está a abertura das auditorias?

    +
  • +
+ + +
+
+

Obtenção de um certificado assinado

           ________ 
+          |        |
+       ___|   CA   |--.
+      /   |________|   \ 2
+     ^        |         : 
+   1 |        | 3       v   
+ ____|____    v     __________
+|         |   |    |          |
+|  Admin  |__/     | Servidor |
+|_________|        |__________|
+
+ + +
+
+

Situação atual

The authenticity of host 'foo.example.org (192.0.2.3)' can't be established.
+RSA key fingerprint is 17:f4:2b:22:90:d4:98:9a:a2:c5:95:4e:4a:89:be:90.
+Are you sure you want to continue connecting (yes/no)?
+
+ +
    +
  • +

    Vocês checam seus fingerprints (OpenPGP, SSH e OpenSSL)?

    +
  • +
  • +

    Maus hábitos de sysadmins geram falsa sensação de segurança

    +
  • +
  • +

    Usabilidade: Bypass da tela de “conexão não-confiável”

    +
  • +
+ + +
+
+

Evidências de cooperação

+ + +
+
+

Casos reais

    +
  • +

    Comodogate: mail.google.com, addons.mozilla.org, login.skype.com, etc.

    +
  • +
  • +

    DigiNotar: certificados falsos da CIA, MI6 e Mossad (timeline).

    +
  • +
  • +

    The EFF SSL Observatory (27c3)

    +
  • +
  • +

    A situação é alarmante: basta apenas que um único CA seja comprometido para ruir toda a infraestrutura.

    +
  • +
  • +

    SSL não se aplica apenas a HTTPS: StartTLS/SMTPS/IMAPS/XMPP/VPN/etc também sofrem dessas vulnerabilidades.

    +
  • +
+ + +
+
+

O que é preciso para interceptar conexão SSL?

    +
  1. +

    Certificado falso.

    +
  2. +
  3. +

    Meios efetivos de um MITM:

    +
      +
    • DNS poisoning apontando requisições para servidores maliciosos.
    • +
    • Redirecionamento de tráfego via BGP.
    • +
    • Acesso físico à rede.
    • +
    +
  4. +
+ + +
+
+

Conexão SSL

 _______________ 
+|               |
+|   CA (local)  |
+|_______________|
+     |
+     ^ 3
+ ____|____       2        __________
+|         |------<-------|          |
+| Cliente |              | Servidor |
+|_________|------>-------|__________|
+                 1  
+
+ + +
+
+

MITM

           ________ 
+          |        |
+       .->|  MITM  |-<.
+      /   |________|   \
+     |                  |
+     v                  v 
+ ____|____          ____|_____
+|         |        |          |
+| Cliente |---X----| Servidor |
+|_________|        |__________|
+
+ + +
+
+

Mas o quanto disso é factível?

+ +

Pequenos provedores até grandes porções da internet podem ser afetados. O ataque é o mesmo, variando +apenas a capacidade do atacante.

+ + +
+
+

Mitigação

Recentemente foram propostas várias formas de mitigação:

+ + + + +
+
+

Alternativas?

    +
  • +

    A grande questão é: abandonar o SSL hoje é uma opção que não depende apenas dos/as usuários, porém +é importante considerar que o modelo atual de certificação não é mandatório.

    +
  • +
  • +

    Ao invés disso, o modelo de CAs pode ser plugável e explorar características locais e globais.

    +
  • +
+ + +
+
+

http://convergence.io

+ + +
+
+

Funcionamento

 _______________     5 cert
+|               |----<----.
+| Notary server |          \
+|_______________|---->---.  \
+  |  |               4    \  \
+6 v  ^ 3 h+fp              \  \
+ _|__|____        2 cert  __\__\____
+|         |------<-------|          |
+| Cliente |              | Servidor |
+|_________|------>-------|__________|
+                 1  
+
+ + +
+
+

Constelação

                     ____      
+            .-----<-|    | 
+            |  .-->-| N1 |<
+ ___________|_|_    |____| \
+|               |    ____   \
+| Notary bounce |->-|    |   \
+|_______________|-<-| N2 |<.  \
+      |  |          |____|  \  \
+      v  ^            .      \  \
+      |  |            .       \  \
+      |  |            .        \  \
+      v  ^           ____       \  \
+      |  |          |    |       \  \
+      |  |          | Nn |        \  .
+      v  ^          |____|-<-->.   . |
+   ___|__|__                   _\__v_v___
+  |         |------<----------|          |
+  | Cliente |                 | Servidor |
+  |_________|------>----------|__________|
+
+ + +
+
+

Convergence: Problemas

    +
  • +

    Se o MITM estiver exatamente no provedor upstream, o Convergence pode não perceber

    +
  • +
  • +

    Mudanças de chaves

    +
  • +
  • +

    The Citibank Problem

    +
  • +
  • +

    Futuro: TACK (Tethered Assertions for Certificate Keys): similar às Chaves Soberanas da EFF

    +
  • +
+ + +
+
+

http://web.monkeysphere.info

    +
  • +

    Add-on pra firefox + agent + userland

    +
  • +
  • +

    Atrela a autenticação à identificações pessoais pela Web Of Trust

    +
  • +
  • +

    Também provê autorização

    +
  • +
+ + +
+
+

I - Estabelecimento de confiança entre pessoas

Usuários e/ou admins trocam seus fingerprints OpenPGP.

+ +
 ________       ________
+|        |-->--|        |
+| Admin  |     |  User  |
+|________|--<--|________|
+
+ + +
+
+

II - Assinatura de chave do servidor

 ___________
+|           |
+| Keyserver | 
+|___________|
+     |
+     ^ 3
+ ____|____       2        __________
+|         |------<-------|          |
+|  Admin  |              | Servidor |
+|_________|------>-------|__________|
+                 1  
+
+ + +
+
+

III - Conexão SSL

 ___________
+|           |
+| Keyserver | 
+|___________|
+     |
+     ^ 3
+ ____|____       2        __________
+|         |------<-------|          |
+|   User  |              | Servidor |
+|_________|------>-------|__________|
+                 1  
+
+ + +
+
+

Web of Trust

    +
  • +

    Identificação.

    +
  • +
  • +

    Confiabilidade.

    +
  • +
  • +

    Mesmo que um usuário não tenha identificado um admin que assinou a chave de um servidor, +confiabilidade ainda pode ser estabelecida por meios indiretos.

    +
  • +
+ + +
+
+

Integração

    +
  • +

    O Monkeysphere ainda é muito geeky porém oferece um nível de segurança muito mais alto +para a verificação de certificados; o código está maduro porém é preciso muito mais desenvolvimento +de UI e usabilidade, além de depender de uma grande WoT para ser eficaz.

    +
  • +
  • +

    O Convergence pode utilizar como backend o Monkeysphere, o que pode reduzir o problema do MITM +upstream.

    +
  • +
+ + +
+
+

Perspectivas

    +
  • +

    A indústria sabe que o modelo de CAs está falido, mas ainda assim existe uma insistência +em dizer que o problema são as “maçãs podres” ou o excesso de CAs.

    +
  • +
  • +

    Os fabricantes de navegadores tem peso maior na decisão, porém dificilmente farão mudanças bruscas uma vez que a internet hoje é muito dependente na infraestrutura de CAs.

    +
  • +
  • +

    A pluralidade de métodos e a plugalidade (:P) de soluções podem convergir num esquema de validação híbrido.

    +
  • +
  • +

    Conscientização do público é fundamental.

    +
  • +
+ + +
+
+

Demonstrações

    +
  • Monkeysphere
  • +
  • Convergence
  • +
+ + +
+
+

Perguntas?

:)
+
+ +
+ + +
+ + \ No newline at end of file -- cgit v1.2.3