Besta / CRIME / ataque de praia e parando

2

Eu já li muito sobre isso, mas não tenho certeza se entendi o que aconteceu.

Além disso, esse é um, dois ou três problemas?

Parece-me três, mas é tudo muito confuso:

Beast
CRIME
Beach

Parece que a solução pode ser simplesmente não usar compactação com tráfego HTTPS (ou isso é apenas em um deles?)

Eu uso compressão GZIP. Tudo bem, ou isso é parte do problema?

Eu também uso o Ubuntu 12.04 LTS

Além disso, o tráfego não-HTTPS está bem?

Então, depois de ler toda a teoria, eu só quero a solução. Acho que essa pode ser a solução, mas alguém pode confirmar que eu entendi tudo, então provavelmente não sofrerei esse ataque:

SOLUTION: Use GZIP compression on HTTP traffic, but don't use any compression on HTTPS traffic
    
por user2143356 18.10.2013 / 16:25

1 resposta

5

CRIME and BREACH (observe que há um "R" lá) use compactação no nível TLS para "vazar" informações sobre os dados criptografados. Muito em breve: Se você puder controlar parte do fluxo de dados e enviar dados diferentes, quando enviar dados que são iguais aos do fluxo que você não controla, a saída será menor (conforme a compactação os duplicará) e você saberá o conteúdo da parte que você não controla.

O BEAST aproveita uma falha na criptografia CBC no TLS 1.0. É praticamente impraticável, mas uma exploração de demonstração foi criada e definitivamente funciona. Há duas correções possíveis para isso, desabilitar Criptografia CBC (que inclui basicamente toda a criptografia "boa" para TLS, deixando você com RC4 que possui vulnerabilidades próprias, incluindo texto simples com vazamento) ou desabilitando o TLS 1.0 e usando somente TLS 1.1 (ou mais recente , ou seja, 1.2).

Os ataques são praticamente impraticáveis, mas se você estiver em um ambiente de alta segurança (como PCIDSS ou EHR), será necessário desabilitar o TLS Compression e o TLS 1.0 CBC Encyrption. A compactação TLS é completamente separada da compactação de conteúdo (por exemplo, Deflate e GZip). A partir das estatísticas mais recentes, cerca de 2/3 dos servidores HTTPS são "vulneráveis" ao BEAST, cerca de 1/6 do CRIME. Mantendo as coisas em perspectiva, 1/3 são vulneráveis porque estão executando uma configuração estúpida que não protege adequadamente os dados em praticamente qualquer nível.

Editar:
Em resposta ao seu comentário: O que é comumente comercializado como "Certificados SSL" são, na verdade, Certificados x509 e não têm nada a ver com SSL além de serem usados pelo protocolo. Quando você está obtendo um Cert, certifique-se de que ele seja 2048 ou 4096 bits (o primeiro é muito comum) RSA ou 384+ ECDSA. Os certificados usam criptografia assimétrica, o que é horrivelmente lento - por esse motivo não são usados para criptografar os dados transportados por SSL / TLS. Eles são usados apenas para concordar com uma chave para usar o stream cypher.

Os cyphers de fluxo comuns são RSA, RC4, Camellia e DES / 3DES. É aí que você encontra a criptografia de 64 bits, 128 bits e 256 bits - é o tamanho da chave dessas cifras de fluxo. O RSA é o "melhor" dos cyphers amplamente suportados do ponto de vista de um SysAdmin - mas sofre do problema CBC no ataque BEAST acima. RC4 "vaza" texto simples. Camélia é ótima, mas não é universalmente suportada, então você não pode confiar em um ambiente público. O DES / 3DES está quebrado e não deve mais ser usado nunca.

Você está basicamente tropeçando na mesma questão de milhões de outros: a escolha entre suporte universal e segurança funcional. Você não pode ter os dois agora. Desativar o TLS Compression é um pouco óbvio, na minha opinião, já que a compactação de conteúdo faz a maior parte da diferença - portanto, pouco custo para "consertar" o problema. Mas a escolha do cypher de fluxo é basicamente: implementar segurança falha com RC4 ou AES, ou exigir TLS 1.1+ e dividir seu site por metade da Internet.

Nota de rodapé: Não se preocupe, tudo isso parecerá leite derramado quando os processadores quânticos atingirem 128 bits e tornar triviais os "Certificados SSL". Estamos provavelmente a menos de 10 anos disso, atualmente em 4 bits.

    
por 18.10.2013 / 16:59