Prevenir el ataque BEAST sin conjuntos de cifrado RC4

4

Es una práctica común prevenir el ataque BEAST utilizando los siguientes cifrados en la configuración SSL de Apache:

SSLCipherSuite RC4-SHA:HIGH:!ADH

Desafortunadamente, se ha encontrado que RC4 tiene fallas y ahora se recomienda evitar su uso.

De un informe de Nessus:

  

Suites de cifrado SSL RC4 admitidas

     

El host remoto admite el uso de RC4 en una o más suites de cifrado.   El cifrado RC4 es defectuoso en su generación de un flujo pseudoaleatorio   de bytes para que una amplia variedad de pequeños sesgos se introduzcan en   La corriente, disminuyendo su aleatoriedad.

     

Si el texto simple se cifra repetidamente (por ejemplo, las cookies HTTP), y un   el atacante puede obtener muchos textos cifrados (es decir, decenas de millones),   el atacante puede derivar el texto en claro.

     

Solución

     

Reconfigure la aplicación afectada, si es posible, para evitar el uso de RC4   cifrados Considere el uso de TLS 1.2 con suites AES-GCM sujetas al navegador   y soporte de servidor web.

He intentado usar los siguientes cifrados en mi configuración SSL de Apache:

SSLCipherSuite HIGH:!ADH:!MD5

Lamentablemente, esto es vulnerable a BESTIA. ¿Cómo puedo evitar esto sin usar las suites de cifrado RC4?

Funcionamos con CentOS 6.5 y utilizamos los siguientes protocolos SSL:

SSLProtocol -ALL -SSLv3 +TLSv1
    
pregunta Michael 31.10.2014 - 06:53
fuente

1 respuesta

10

BEAST es un ataque del lado del cliente, por lo que todo lo que puede hacer en el lado del servidor es evitar que los clientes no conscientes se pongan en una posición vulnerable a BEAST. Sin embargo, los clientes modernos (navegadores web) no son vulnerables a BEAST de todos modos:

  • Los clientes utilizan la división de registros (generalmente 1 / n -1) como contramedida.
  • BEAST requiere que el código hostil en el navegador (en Java o Javascript) pueda enviar solicitudes al sitio de destino con valores de byte arbitrarios; actualmente no se conoce ningún método para hacerlo (en el momento de la demostración de BEAST, los autores habían encontrado dos fallas que lo permitían, pero ambos estaban arreglados desde entonces).

Un cliente que todavía es vulnerable a BEAST es un cliente que no se ha actualizado durante varios años, lo que significa que ya tiene problemas más grandes.

Una solución más general es usar TLS 1.1 o 1.2, que no son vulnerables a ese ataque específico. Sin embargo, incluso cuando los clientes admiten dichos protocolos, también tienden a realizar reconexiones desenfrenadas que los hacen vulnerables a los ataques de degradación del protocolo.

Podría decirse que las herramientas y las personas que gimen y rechinan los dientes acerca de BESTIA necesitan una actualización. La "prevención de BESTIA" se ha convertido en un dogma tóxico, repitió ad nauseam sin una comprensión decente de lo que realmente significa.

    
respondido por el Thomas Pornin 31.10.2014 - 12:31
fuente

Lea otras preguntas en las etiquetas