Internet Explorer no admite nombres de usuario ni contraseñas en direcciones de sitio web (direcciones URL HTTP o HTTPS)

Advertencia

Se ha programado la deshabilitación permanente de la aplicación de escritorio retirada y sin soporte de Internet Explorer 11 a través de una actualización de Microsoft Edge en ciertas versiones de Windows 10. Para obtener más información, consulte Preguntas frecuentes sobre la retirada de la aplicación de escritorio de Internet Explorer 11.

Este artículo está diseñado para notificar a los administradores de sitios web y profesionales de TI sobre el comportamiento de Internet Explorer cuando se incluye información de usuario en una dirección de sitio web (DIRECCIÓN URL HTTP o HTTPS).

Versión original del producto: Internet Explorer
Número de KB original: 834489

Resumen

De forma predeterminada, las versiones de Internet Explorer que se publicaron a partir del lanzamiento de la actualización de seguridad 832894 no admiten el control de nombres de usuario y contraseñas en HTTP y HTTP con la capa de sockets seguros (SSL) o direcciones URL HTTPS. La siguiente sintaxis de dirección URL no se admite en Internet Explorer ni en Windows Explorer:

http(s)://username:password@server/resource.ext

Este artículo está pensado para notificarle este comportamiento predeterminado de Internet Explorer. Si incluye información de usuario en direcciones URL HTTP o HTTPS, se recomienda explorar las soluciones alternativas que se describen en este artículo.

Información de contexto

Las versiones 3.0 a 6.0 de Internet Explorer admiten la siguiente sintaxis para las direcciones URL HTTP o HTTPS:

http(s)://username:password@server/resource.ext

Puede usar esta sintaxis de dirección URL para enviar automáticamente información de usuario a un sitio web que admita el método de autenticación básico.

Un usuario malintencionado podría usar esta sintaxis de dirección URL para crear un hipervínculo que parece abrir un sitio web legítimo, pero que realmente abre un sitio web engañoso (suplantado). Por ejemplo, la siguiente dirección URL parece abrirse http://www.wingtiptoys.com , pero en realidad se abre http://example.com:

http://www.wingtiptoys.com@example.com

Nota:

En este caso, Internet Explorer 6 Service Pack 1 (SP1) e Internet Explorer 6 para Microsoft Windows Server 2003 solo se muestran http://example.com en la barra de direcciones. Sin embargo, las versiones anteriores de Internet Explorer se muestran http://www.wingtiptoys.com@example.com en la barra de direcciones.

Además, los usuarios malintencionados pueden usar esta sintaxis de dirección URL junto con otros métodos para crear un vínculo a un sitio web engañoso (suplantado) que muestra la dirección URL a un sitio web legítimo en la barra estado, la barra de direcciones y la barra de título de todas las versiones de Internet Explorer. Para obtener más información sobre este problema, haga clic en el número de artículo 833786 para protegerse de sitios web engañosos (suplantados) e hipervínculos malintencionados.

Explicación del cambio en el comportamiento predeterminado

Para mitigar los problemas que se describen en la sección Información en segundo plano , Internet Explorer y Windows Explorer ya no admiten el control de direcciones URL HTTP y HTTPS de este formulario. Windows Explorer e Internet Explorer no abren sitios HTTP o HTTPS mediante una dirección URL que incluya información de usuario. De forma predeterminada, si la información del usuario se incluye en una dirección URL HTTP o HTTPS, aparece una página web con el título siguiente:

Error de sintaxis no válido.

Nota:

Este cambio en el comportamiento predeterminado no afecta a otros protocolos.

Este cambio en el comportamiento predeterminado también se implementa mediante actualizaciones de seguridad, service packs y versiones de Internet Explorer que se publicaron a partir de la versión de la actualización de seguridad 832894.

Soluciones alternativas para los usuarios

  1. Direcciones URL que abren los usuarios que escriben la dirección URL en la barra de direcciones o hacen clic en un vínculo

    Si los usuarios suelen escribir direcciones URL HTTP o HTTPS que incluyen información de usuario en la barra de direcciones, o bien hacer clic en vínculos que incluyen información de usuario en direcciones URL HTTP o HTTPS, puede solucionar esta nueva funcionalidad en Internet Explorer de dos maneras:

    • No incluya información de usuario en direcciones URL HTTP o HTTPS.
    • Indique a los usuarios que no incluyan su información de usuario cuando escriban direcciones URL HTTP o HTTPS.

    Si el sitio web usa el método de autenticación básico, Internet Explorer solicita automáticamente a los usuarios un nombre de usuario y una contraseña. En algunos casos, los usuarios pueden hacer clic en el cuadro Recordar mi contraseña del cuadro de diálogo para guardar sus credenciales para las visitas posteriores a ese sitio web.

Soluciones alternativas para desarrolladores de aplicaciones y sitios web

  1. Direcciones URL abiertas por objetos que llaman a funciones WinInet o Urlmon

    Para los objetos que usan una dirección URL HTTP o HTTPS que incluye información de usuario cuando llaman a una función WinInet o Urlmon como InternetOpenURL, vuelva a escribir el objeto para usar uno de los métodos siguientes para enviar información de usuario al sitio web:

    • Use la función InternetSetOption e incluya las siguientes marcas de opción:
      • INTERNET_OPTION_USERNAME
      • INTERNET_OPTION_PASSWORD

    Nota:

    Para estas marcas, la opción InternetSetOption debe tener un identificador devuelto por la función InternetConnect. Por lo tanto, si la aplicación usa la función InternetOpenUrl, modifique la aplicación para que use las funciones InternetConnect, HttpOpenRequest y HttpSendRequest WinInet.

    Para obtener más información sobre cómo usar estas funciones, visite los siguientes sitios web de Microsoft:

    Para obtener más información sobre cómo usar la interfaz IAuthenticate , visite el siguiente sitio web de Microsoft:

    Nota:

    Con esta solución alternativa, puede abrir sitios web que redirige la técnica de suplantación de dirección URL. Aparece toda la dirección URL, incluida la ubicación redirigida.

    Por ejemplo, aparece la siguiente dirección URL:

    http://www.wingtiptoys.com@www.example.com

    El usuario sigue llegando al sitio web redirigido. En este ejemplo, el usuario llega a http://www.example.com.

  2. Direcciones URL abiertas por un script que usa credenciales para la administración de estados

    Si incluye direcciones URL HTTP o HTTPS que contienen información de usuario en el código de scripting, para administrar la información de estado, cambie el código de scripting para usar cookies en lugar de información del usuario. Para obtener más información sobre cómo usar cookies para administrar la información de estado, consulte Mecanismo de administración de estado HTTP.

    Para ver un ejemplo de cómo usar Visual Basic para leer y escribir cookies HTTP en un programa web de ASP.NET, vea Clase HttpCookie.

Cómo deshabilitar el nuevo comportamiento o usarlo en otros programas

Puede establecer valores del Registro para usar este nuevo comportamiento en otros programas que hospedan el control de explorador web o para deshabilitar este nuevo comportamiento para Windows Explorer e Internet Explorer.

  1. Cómo los programas que hospedan el control del explorador web pueden usar este nuevo comportamiento predeterminado para controlar la información de usuario en HTTP o en direcciones URL HTTPS

    De forma predeterminada, este nuevo comportamiento predeterminado para controlar la información de usuario en direcciones URL HTTP o HTTPS solo se aplica a Windows Explorer e Internet Explorer. Para usar este nuevo comportamiento en otros programas que hospedan el control del explorador web, cree un valor DWORD denominado SampleApp.exe, donde SampleApp.exe es el nombre del archivo ejecutable que ejecuta el programa. Establezca los datos de valor del valor DWORD en 1 en una de las siguientes claves del Registro.

    • Para todos los usuarios del programa, establezca el valor en la siguiente clave del Registro:

      HKEY_LOCAL_MACHINE\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

    • Solo para el usuario actual del programa, establezca el valor en la siguiente clave del Registro:

      HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

  2. Cómo deshabilitar el nuevo comportamiento predeterminado para controlar la información de usuario en direcciones URL HTTP o HTTPS

    Para deshabilitar el nuevo comportamiento predeterminado en Windows Explorer e Internet Explorer, cree iexplore.exe y explorer.exe valores DWORD en una de las siguientes claves del Registro y establezca sus datos de valor en 0.

    • Para todos los usuarios del programa, establezca el valor en la siguiente clave del Registro:

      HKEY_LOCAL_MACHINE\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

    • Solo para el usuario actual del programa, establezca el valor en la siguiente clave del Registro:

      HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

Referencias

Para obtener una explicación de la sintaxis de dirección URL estándar para direcciones URL HTTP o HTTPS, visite los siguientes sitios web de Internet Engineering Task Force (IETF):

Microsoft proporciona información de contacto de otros proveedores para ayudarle a encontrar soporte técnico. Dicha información de contacto puede cambiar sin notificación previa. Microsoft no garantiza la precisión de esta información de contacto de terceros.