¿Por qué Internet Explorer 11 no puede conectarse a sitios HTTPS cuando TLS 1.2 está habilitado?

15

Normalmente no uso Internet Explorer en absoluto. Lo uso solo en tiempo de diseño para pruebas de interfaz (máquina de desarrollo y con http sin cifrar). Cada semana ejecuto la prueba del servidor SSL Labs que dice que IE11 puede acceder a mis sitios.

Hoy descubrí un problema con uno de mis servicios de terceros. Algunas funciones especiales no funcionan con Chrome o Firefox, así que inicié IE11 en mi máquina con Windows 7. E IE11 me muestra una página de error incorporada que básicamente dice "no se pudo mostrar la página". Y el típico ficticio bla bla como verificar el DNS, etc. No había absolutamente ninguna señal de un problema relacionado con el cifrado en toda la página de error (como haría el navegador normal).

schannelHace un par de meses hubo este problema que impide que los IE habilitados para TLS1.2 accedan a sitios HTTPS. A partir de ese momento, mi "lista de verificación WTF para IE" contiene "deshabilitar TLS1.2" como punto de verificación. Y qué debo decir ... deshabilitar TLS1.2 dentro de IE funcionó y mi sitio está disponible nuevamente . Pero no puedo hacer esto en los navegadores de mis visitantes.

Ahora a las preguntas reales: ¿Por qué Internet Explorer 11 no puede conectarse a mi sitio HTTPS cuando TLS 1.2 está habilitado en IE? ¿Y cómo solucionarlo en el lado del servidor? SSL Labs dice que todo está bien en mi sitio .

Edición Imporant: Parece que IE11 solo puede manejar el dominio sin prefijo y no los dominios con prefijo cuando TLS1.2 está habilitado. el dominio sin prefijo (www) funciona mientras que el dominio que incluye el prefijo (www) no funcionará .

En el lado del servidor estoy usando debian / 7 nginx / 1.7.8 openssl / 1.0.1e

Los cifrados disponibles son: ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:-DES:!RC4:!MD5:!PSK:!aECDH:EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA

Burnersk
fuente
3
Podría estar relacionado o no: su certificado tiene entradas SAN duplicadas para ssl.dev5media.de. Tal vez IE11 grazna sobre eso? Aparte de eso, el CN ​​es ssl.dev5media.de, es decir, tiene el prefijo ssl y no ningún prefijo como usted describe.
Steffen Ullrich
Gracias por señalar eso, @SteffenUllrich. CN no tenía prefijo antes de mi última rotación de certificados hace un par de semanas. Eliminaré la parte CN dentro de la pregunta. Pero de todos modos ... está funcionando cuando TLS1.2 está deshabilitado. ¿No debería la validación del certificado estar en una biblioteca compartida y no dentro de las implementaciones del método de cifrado (TLS1.0, TLS1.1, TLS1.2)?
burnersk
1
El sitio www.dev5media.defunciona para mí en IE11, Win7 con TLS 1.2 y cifrado de TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 acuerdo con una captura de paquete. ¿Qué sistema operativo utiliza y puede hacer una captura de paquetes para el nombre que funciona y el que no funciona para ver la diferencia?
Steffen Ullrich
@SteffenUllrich: no soy un experto en Wireshark, pero parece que el apretón de manos www.dev5media.de (con TLS_DHE_RSA_WITH_AES_128_GCM_SHA256) se realizó con éxito. Pero después Server Hello Doneno hay comunicación del cliente al servidor.
burnersk
2
Fwiw, intenté con IE11 (11.0.9600.17690) en Windows 8.1 y obtuve el error genérico "Esta página no se puede mostrar" para ambos https://dev5media.de/y https://www.dev5media.de/, de alguna manera, obtuve un resultado más consistente.
Håkan Lindqvist

Respuestas:

5

¿También tienes SSL 2.0 habilitado?

De acuerdo con http://support.microsoft.com/en-us/kb/2851628 "SSL 2.0 y TLS 1.2 no son compatibles entre sí en Windows 7 y sistemas operativos posteriores. Para usar certificados del lado del cliente para establecer una conexión HTTPS sobre TLS 1.2, debe deshabilitar SSL 2.0 ".

John Ball
fuente
3

Me encontré con este problema hoy con IE11 en Win 7 (totalmente actualizado con actualizaciones importantes, pero no opcionales), cuando se usa la suite Intermediate de Mozilla , que funciona bien con IE8 en XP y se supone que funciona con IE7 +. Pensé que publicaría aquí es que este problema no aparece mucho más en Google.

Pasé un tiempo con wireshark descubriendo la modificación mínima requerida para que funcione. Descargo de responsabilidad: no soy un experto en criptografía, podría haber una mejor manera de hacer esto. Pero no cambió mi calificación de ssllabs.com en absoluto.

Mueva ECDHE-RSA-AES128-SHA256 (el primero que funciona para IE11) por encima de kEDH + AESGCM y DHE-RSA-AES128-GCM-SHA256, para el conjunto intermedio que resulte en:

ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA256:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
aaron-bru
fuente