From f0d6634fe3e64cea43bd82b28ac22068b13eba8e Mon Sep 17 00:00:00 2001 From: Silvio Date: Sat, 3 Dec 2011 19:47:22 -0200 Subject: S9 formatting --- cool.pdf.html | 471 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 471 insertions(+) create mode 100644 cool.pdf.html (limited to 'cool.pdf.html') diff --git a/cool.pdf.html b/cool.pdf.html new file mode 100644 index 0000000..4631dd7 --- /dev/null +++ b/cool.pdf.html @@ -0,0 +1,471 @@ + + + + + Convergence e Monkeysphere: chaves para gestão SSL distribuída + + + + + + + + +
+ +
+

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

Convergence e +Monkeysphere: 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 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. Altenticidade: os pontos da comunicação serão verificados.
  6. +
  7. Disponibilidade: proteção a DoS, etc.
  8. +
  9. Anonimato.
  10. +
+ +

No caso do SSL/TLS:

+ +
    +
  1. Sigilo: Bulk Encryption e 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)
  • +
  • 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/twiki/bin/view/Certificacao/WebHome
  • +
+ + +
+
+

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
  • +
  • Google - ?
  • +
+ + +
+
+

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

    +
  • Vocês checam seus fingerprints (OpenPGP, SSH e OpenSSL)?
  • +
  • sslsnif
  • +
  • Maus hábitos de sysadmins geram falsa sensação de segurança
  • +
  • Bypass da tela de “conexão não-confiável”
  • +
+ + +
+
+

Casos reais

“Crime maior do que roubar uma CA é fundar uma CA” - Bertold Brecha

+ +
    +
  • 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?

+ +

A falha atinge de pequenos provedores até grandes porções da internet. 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.

+ + +
+
+

Convergence

    +
  • http://convergence.io
  • +
  • Add-on para firefox
  • +
  • Precedido pelo Perspectives (http://perspectives-project.org)
  • +
  • “Trust agility”
  • +
  • Problemas: +
      +
    • Se o MITM estiver exatamente no provedor upstream, o Convergence pode não perceber.
    • +
    • Mudanças de chaves.
    • +
    +
  • +
+ + +
+
+

Funcionamento

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

Bundles

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

Monkeysphere

    +
  • http://web.monkeysphere.info
  • +
  • Add-on pra firefox
  • +
  • Atrela a autenticação à identificações pessoais pela Web Of Trust
  • +
  • Também provê autorização
  • +
+ + +
+
+

I - Estabelecimento de confiança entre pessoas

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

II - Assinatura de chave do servidor

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

III - Conexão SSL

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

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.
  • +
  • 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?

+ + +
+ + + -- cgit v1.2.3