Resumen
La Seguridad de la capa de transporte (TLS) 1.0 y 1.1 son protocolos de seguridad para crear canales de cifrado a través de redes informáticas. Microsoft los ha apoyado desde Windows XP y Windows Server 2003. Sin embargo, los requisitos reglamentarios están cambiando. Además, hay nuevos puntos débiles de seguridad en TLS 1.0. Por lo tanto, Microsoft recomienda quitar las dependencias de TLS 1.0 y 1.1. También se recomienda deshabilitar TLS 1.0 y 1.1 en el nivel de sistema operativo siempre que sea posible. Para obtener más información, consulte Deshabilitación de TLS 1.0 y 1.1. En la actualización de la versión preliminar del 20 de septiembre de 2022, deshabilitaremos TLS 1.0 y 1.1 de forma predeterminada para las aplicaciones basadas en winhttp y wininet. Esto es parte de un esfuerzo continuo. Este artículo le ayudará a rehabilitarlas. Estos cambios se reflejarán después de instalar las actualizaciones de Windows publicadas el 20 de septiembre de 2022 o después.
Comportamiento al acceder a vínculos TLS 1.0 y 1.1 en el explorador
Después del 20 de septiembre de 2022, aparecerá un mensaje cuando el explorador abra un sitio web que use TLS 1.0 o 1.1. Consulte la Figura 1. El mensaje indica que el sitio usa un protocolo TLS obsoleto o inseguro. Para solucionar esto, puede actualizar el protocolo TLS a TLS 1.2 o superior. Si esto no es posible, puede habilitar TLS como se describe en Habilitar TLS versión 1.1 y anteriores.
Figura 1: Ventana del explorador al acceder a la página web de TLS 1.0 y 1.1
Comportamiento al acceder a vínculos TLS 1.0 y 1.1 en aplicaciones winhttp
Después de la actualización, es posible que se produzca un error en las aplicaciones basadas en winhttp. El mensaje de error es "ERROR_WINHTTP_SECURE_FAILURE mientras se realiza la operación WinHttpSendRequest".
Comportamiento al acceder a vínculos TLS 1.0 y 1.1 en aplicaciones de interfaz de usuario personalizadas basadas en winhttp o wininet
Cuando una aplicación intenta crear una conexión mediante TLS 1.1 y versiones anteriores, puede parecer que la conexión da error. Cuando cierra una aplicación o deja de funcionar, aparece el cuadro de diálogo del Asistente para la compatibilidad de programas (PCA), tal y como se muestra en la figura 2.
Figura 2: Cuadro de diálogo Asistente para la compatibilidad de programas después de cerrar una aplicación
El cuadro de diálogo del PCA indica lo siguiente: "Es posible que este programa no se haya ejecutado correctamente". Debajo, hay dos opciones:
- Ejecutar el programa mediante la configuración de compatibilidad
- Este programa se ejecutó correctamente
Ejecutar el programa mediante la configuración de compatibilidad
Al elegir esta opción, la aplicación se vuelve a abrir. Ahora, todos los vínculos que usan TLS 1.0 y 1.1 funcionan correctamente. A partir de ese momento, no aparecerá ningún cuadro de diálogo PCA. El Editor del Registro agrega entradas a las siguientes rutas:
- Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store.
- Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers.
Si ha elegido esta opción por error, puede borrar estas entradas. Si los elimina, verá el cuadro de diálogo PCA la próxima vez que abra la aplicación.
Figura 3: Lista de programas que deben ejecutarse usando la configuración de compatibilidad
Este programa se ejecutó correctamente
Cuando elige esta opción, la aplicación se cierra normalmente. La próxima vez que vuelva a abrir la aplicación, no aparecerá ningún cuadro de diálogo PCA. El sistema bloquea todo el contenido de TLS 1.0 y 1.1. El Editor del Registro agrega la entrada siguiente a la ruta de accesoComputer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store. Consulte la Figura 4. Si eligió esta opción por error, puede eliminar esta entrada. Si elimina la entrada, verá el cuadro de diálogo PCA la próxima vez que abra la aplicación.
Figura 4: Entrada en el Editor del Registro que indica que la aplicación se ejecutó correctamente
Importante Los protocolos TLS heredados solo están habilitados para aplicaciones específicas. Esto es así aunque estén deshabilitadas en la configuración de todo el sistema.
Habilitar TLS versión 1.1 y versiones anteriores (configuración de Wininet e Internet Explorer)
No se recomienda habilitar TLS 1.1 y versiones anteriores porque ya no se consideran seguras. Son vulnerables a varios ataques, como el ataque POODLE. Por lo tanto, antes de habilitar TLS 1.1, realice una de las siguientes acciones:
- Compruebe si hay disponible una versión más reciente de la aplicación.
- Pida al desarrollador de la aplicación que realice cambios de configuración en la aplicación para quitar la dependencia de TLS 1.1 y versiones anteriores.
En caso de que ninguna de las soluciones funcione, hay dos formas de habilitar los protocolos TLS heredados en la configuración de todo el sistema:
- Opciones de Internet
- Editor de directivas de grupo
Opciones de Internet
Para abrir Opciones de Internet, escriba Opciones de Internet en el cuadro de búsqueda de la barra de tareas. También puede seleccionar Cambiar configuración en el cuadro de diálogo que se muestra en la figura 1. En la pestaña Avanzado , desplácese hacia abajo en el panel Configuración . Allí puede habilitar o deshabilitar los protocolos TLS.
Figura 5: Cuadro de diálogo Propiedades de Internet
Editor de directivas de grupo
Para abrir el Editor de directivas de grupo, escriba gpedit.msc en el cuadro de búsqueda de la barra de tareas. Aparece una ventana como la que se muestra en la figura 6.
Figura 6: Ventana del Editor de la directiva de grupo
- Ir a Directiva> de equipo local (configuración del equipo o configuración de usuario)>Plantillas administrativas Componentes>> deWindowsInternet Explorer>Panel de control de>InternetPágina> avanzadaDesactive la compatibilidad con el cifrado. Consulte la Figura 7.
- Haga doble clic en Desactivar el soporte de cifrado.
Figura 7: Ruta de acceso para desactivar la compatibilidad con el cifrado en el Editor de la directiva de grupo - Seleccione la opción Habilitado . Después, use la lista desplegable para seleccionar la versión de TLS que desea habilitar, como se muestra en la figura 8.
Figura 8: Habilitar Desactivar compatibilidad con el cifrado y lista desplegable
Una vez habilitada la directiva en el Editor de directivas de grupo, no podrá cambiarla en Opciones de Internet. Por ejemplo, si selecciona Usar SSL3.0 y TLS 1.0, el resto de opciones no estarán disponibles en las opciones de Internet. Consulte la Figura 9. No se puede cambiar ninguna de las opciones de Internet si habilita Desactivar la compatibilidad con el cifrado en el Editor de la directiva de grupo.
Figura 9: Opciones de Internet que muestran configuraciones SSL y TLS no disponibles
Habilitar TLS versión 1.1 y versiones anteriores (configuración winhttp)
Rutas de acceso importantes del Registro (configuración de Wininet e Internet Explorer)
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
- Aquí puede encontrar SecureProtocols, que almacena el valor de los protocolos habilitados actualmente si usa el Editor de la directiva de grupo.
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- Aquí puede encontrar SecureProtocols, que almacena el valor de los protocolos habilitados actualmente si usa Opciones de Internet.
Los SecureProtocols de la directiva de grupo tendrán prioridad sobre los establecidos por Opciones de Internet.
Habilitar la reserva TLS no segura
Las modificaciones anteriores habilitarán TLS 1.0 y TLS 1.1. Sin embargo, no habilitarán la reserva TLS. Para habilitar la reserva TLS, debe establecer EnableInsecureTlsFallback en 1 en el Registro en las rutas siguientes.
- Para cambiar la configuración: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
- Para establecer la directiva: SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
Si EnableInsecureTlsFallback no está presente, debe crear una nueva entrada DWORD y establecerla en 1.
Rutas de acceso importantes del Registro
ForceDefaultSecureProtocols
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
- Es FALSO de forma predeterminada. Establecer un valor distinto de cero impedirá que las aplicaciones establezcan protocolos personalizados con la opción winhttp.
EnableInsecureTlsFallback
- Para cambiar la configuración: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp
- Para establecer la directiva: SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings
- Es FALSO de forma predeterminada. Establecer un valor distinto de cero permitirá que las aplicaciones vuelvan a protocolos no seguros (TLS1.0 y 1.1) si el protocolo de enlace falla con protocolos seguros (tls1.2 y posteriores).