Búsqueda de sitios web

Autenticación básica en Office 365 Parte II


Update. Microsoft has changed their plans due to the Covid-19 crisis going on at the moment. Support for Basic Authentication in Exchange Online has been postponed to the second half of 2021 according to their blogpost on Basic Authentication and Exchange Online - April 2020 Update.

There are a few things to be aware of. For new tenants, Basic Authentication is already turned off, for older tenants it is still turned on. However, if Basic Authentication has not been used in a tenant it will be turned off as well. This will start upcoming October.

En mi entrada de blog anterior expliqué más sobre la autenticación básica y moderna, cómo funcionan y cómo identificar qué método está utilizando su cliente de Outlook. En esta publicación de blog, explicaré más sobre cómo monitorear la autenticación básica para descubrir qué clientes todavía usan la autenticación básica en su entorno de Office 365. Continuaré con cómo deshabilitar la autenticación básica y cómo probar lo que podría suceder.

Supervisión de la autenticación básica

En mi entrada de blog anterior expliqué un poco más sobre la autenticación básica y cómo identificarla, y el funcionamiento de la autenticación moderna.

El siguiente paso es identificar cuántos usuarios y aplicaciones utilizan realmente la autenticación básica en su entorno de Office 365. Después de todo, estos son los usuarios que se ven afectados cuando Microsoft detiene la autenticación básica.

Para identificar esto, inicie sesión en el Portal de Azure Active Directory (https://aad.portal.azure.com) y seleccione inicios de sesión (en Supervisión). Allí verá una descripción general de todos los inicios de sesión en Azure AD, exitosos y fallidos, para todos los clientes, todos los servicios y todas las ubicaciones. En la siguiente captura de pantalla se muestra un ejemplo (haga clic para ampliar):

Esto muestra todos los inicios de sesión en Azure AD, para todas las aplicaciones y servicios, fallidos y exitosos. Puede utilizar el botón Agregar filtros para limitar la información en esta publicación de blog para mostrar solo información sobre la autenticación básica.

Para hacer esto, haga clic en Agregar filtro | Seleccione Aplicación cliente | Haga clic en Aplicar

Haga clic en “Aplicación cliente: Ninguna seleccionada” y seleccione todas las opciones excepto Navegador y Aplicaciones móviles y Clientes de escritorio como se muestra en la siguiente captura de pantalla (haga clic en alargar):

Nota. Se actualizó la captura de pantalla el 6 de abril de 2020. Microsoft realizó una buena mejora en la GUI aquí para identificar fácilmente diferentes clientes (modernos y heredados).

Ahora se mostrará una descripción general de todos los intentos de autenticación básica en su entorno. Cuando selecciona una entrada, se mostrarán detalles adicionales, incluida la aplicación cliente, el nombre de usuario y el agente de usuario (que identifica la aplicación cliente), como se muestra en la siguiente captura de pantalla (haga clic para ampliar):

Otra cosa interesante es que puedes identificar de dónde provienen todos los intentos fallidos de autenticación básica. Añadir un filtro Estado | Fallo y verás sólo los intentos fallidos. Algunos son legítimos (error tipográfico al ingresar la contraseña), pero la mayoría son solo ataques de fuerza bruta. La siguiente captura de pantalla muestra intentos provenientes de Rusia, Tailandia y Nueva Caledonia, ubicados donde no tenemos oficinas. También puede ver que el intento proviene de un script (Agente de usuario CBAInPROD) y que está usando IMAP4 (que está deshabilitado para todos los buzones). Esta es una de las razones por las que desea deshabilitar la autenticación básica en su inquilino. Click para agrandar:

Esta es una forma sencilla de identificar clientes móviles que utilizan ActiveSync como protocolo y, por tanto, utilizan autenticación básica. El cliente de correo nativo de Apple iOS admite OAuth2 desde iOS11, por lo que todos los iPhones recientes utilizan autenticación moderna. Para el cliente de correo nativo de Android la cosa es diferente. El cliente nativo de Gmail admite OAuth2 pero, por supuesto, no se puede utilizar con Office 365. La mayoría de los demás clientes de correo aún no admiten OAuth2, por lo que utilizan autenticación básica y tendrán problemas cuando Microsoft detenga la autenticación básica. En otras palabras, estos clientes dejarán de trabajar. Cambie el filtro Aplicación cliente a Exchange ActiveSync únicamente y elimine el Estado | Filtro Error. Mostrará una lista de usuarios móviles que usan autenticación básica como se muestra en la siguiente captura de pantalla (el nombre de usuario se elimina por razones de privacidad) (haga clic para ampliar):

Nota. Outlook para iOS y Outlook para Android utilizan OAth2, por lo que seguirán funcionando.

Por lo tanto, al utilizar las opciones de filtrado en la página de inicio de sesión en el portal de Azure AD, puede identificar qué clientes todavía usan la autenticación básica al acceder a los servicios de Office 365 (y, por lo tanto, qué clientes se ven afectados cuando se detiene la autenticación básica).

Deshabilitar la autenticación básica

Es posible deshabilitar la autenticación básica en su Office 365 creando una Política de autenticación y aplicar esta política a los usuarios. Una vez aplicado, ya no pueden usar la autenticación básica para iniciar sesión en ningún servicio de Office 365. Para crear una nueva política de autenticación, utilice el siguiente comando en Exchange Online PowerShell:

[PS] C:\> New-AuthenticationPolicy -Nombre “Bloquear autenticación básica”

Para agregar un usuario a la política y bloquear efectivamente la autenticación básica para este usuario, puede usar el siguiente comando en Exchange Online PowerShell:

[PS] C:\> Set-User -Identity j.wesselius@exchangelabs.nl -AuthenticationPolicy “Bloquear autenticación básica”

Pasarán hasta 24 horas antes de que esta política entre en vigor. Para que la política entre en vigor (casi de inmediato, o al menos dentro de 30 minutos), puede utilizar el siguiente comando:

[PS] C:\> Set-User -Identity j.wesselius@exchangelabs.nl -AuthenticationPolicy “Bloquear autenticación básica” -STSRefreshTokensValidFrom $ ([System.DateTime]::UtcNow)

Para eliminar a un usuario de una política de autenticación, puede usar $Null para la política de autenticación:

[PS] C:\> Establecer-Usuario -Identidad j.wesselius@exchangelabs.nl -AuthenticationPolicy $Null

Cuando haya agregado una cantidad de usuarios a esta política de autenticación, puede comenzar a probar con varios clientes y crear una tabla con clientes y escenarios, como la siguiente tabla:

Client

Resultados

Office 2010

Deja de funcionar (sigue pidiendo la contraseña)

Office 2013/2016

Continúa funcionando (ya estaba usando la autenticación moderna)

Outlook 2010 on-premises mailbox, cross-premises free/busy

Continúa funcionando, pero necesita más investigación (nota 1)

Outlook 2013/2016 on-premises mailbox, cross-premises free/busy

continúa trabajando

iPhone 8, iOS13, native mailclient

continúa trabajando

iPhone 8, iOS13, Outlook for iOS

continúa trabajando

Samsung A10, Android 9, native Email client 6.1.11.6

Deja de funcionar

Samsung A10, Android 9, AquaMail (by MobiSystems, supports OAuth)

Continúa trabajando (nota 2)

Samsung A10, Android 9, Outlook for Android

continúa trabajando

Exchange Online PowerShell New-PSSession

Deja de funcionar (nota 3)

Exchange Online PowerShell module

continúa trabajando

Exchange PowerShell V2

continúa trabajando

POP3 Clients

Por determinar

IMAP4 Clients

Por determinar

Nota 1. En este escenario, un cliente de Outlook utiliza un buzón local pero intenta recuperar información de disponibilidad de un buzón que está en Exchange Online. Ambas cuentas tienen la autenticación básica deshabilitada en Azure AD.

Nota 2. El cliente de correo nativo en Android 9 (en mi Samsung A10) solo admite autenticación básica. Esta no es una limitación del dispositivo sino una limitación de la aplicación. AquaMail (de MobiSystems), por ejemplo, es compatible con OAuth y sigue funcionando cuando la autenticación básica está desactivada. Sin embargo, AquaMail no es una aplicación gratuita sino una aplicación basada en suscripción.

Nota 3. Es posible conectarse a Exchange Online como se muestra en la línea 9 de la tabla utilizando el siguiente método:

$ExCred = Get-Credential TenantAdminAccount
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $ExCred -Authentication Basic -AllowRedirection
Import-PSSession $Session

Esto utiliza autenticación básica y dejará de funcionar. Sin embargo, no deberías utilizar esta forma de trabajar de todos modos porque no es compatible con MFA, ¡que es una práctica recomendada para cuentas de administrador! Para obtener más información, consulte Autenticación multifactor MFA en Office 365 para cuentas de administrador.

Resumen

En las dos publicaciones de blog anteriores intenté explicar un poco más sobre la autenticación básica y moderna, y lo que podría suceder cuando Microsoft finalice el soporte para la autenticación básica en Exchange Online el próximo octubre.

Seguramente algo se romperá al conectarse a Exchange Online. El más obvio es Outlook 2010, que ya no se conecta. Los clientes móviles nativos que no son compatibles con oAuth2 (común en aplicaciones de correo de Android, pero también en iPhones más antiguos) también dejan de funcionar. Si no actúa ahora, tendrá muchos problemas cuando Microsoft haga el cambio.

Por ahora, empieza a probar usando las opciones que expliqué en esta segunda entrada del blog. Cree su propia lista de aplicaciones y servicios que utilizan autenticación básica y comience a probar con una política de autenticación que bloquee la autenticación básica. Esa es la única manera de prepararse para este gran (megagran) cambio que se avecina. Pero al final, todos nos beneficiaremos desde el punto de vista de la seguridad.

Más información

  • Autenticación básica y Exchange Online - Actualización de febrero de 2020 - https://techcommunity.microsoft.com/t5/exchange-team-blog/basic-auth-and-exchange-online-february-2020-update/ba-p/1191282
  • Deshabilite la autenticación básica en Exchange Online: https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/disable-basic-authentication-in-exchange-online
  • Descripción general de la plataforma de identidad de Microsoft (v2.0): https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-overview
  • Habilite la autenticación moderna en Exchange Online: https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/enable-or-disable-modern-authentication-in-exchange-online
  • Conceptos básicos de autenticación: https://docs.microsoft.com/nl-nl/azure/active-directory/develop/authentication-scenarios
  • Azure AD Mailbag: descubrimiento y bloqueo de la autenticación heredada: https://techcommunity.microsoft.com/t5/azure-active-directory-identity/azure-ad-mailbag-discovering-and-blocking-legacy-authentication/ba-p/ 369725
  • Cómo funciona la autenticación moderna para las aplicaciones cliente de Office 2013 y Office 2016: https://docs.microsoft.com/en-us/office365/enterprise/modern-auth-for-office-2013-and-2016
  • iOS 11 brinda soporte para OAuth 2.0 (Modern Auth) en la aplicación de correo nativa: https://blog.peterdahl.net/2017/09/12/ios-11-provides-support-for-oauth-2-0-in -la-aplicación-de-correo-nativa/
  • Evolución de la plataforma de identidad de Microsoft: https://docs.microsoft.com/en-us/azure/active-directory/develop/about-microsoft-identity-platform
  • Lista de cadenas de agentes de usuario: https://deviceatlas.com/blog/list-of-user-agent-strings
  • ¡La compatibilidad con el acceso condicional de Azure AD para bloquear la autenticación heredada está en versión preliminar pública! - https://techcommunity.microsoft.com/t5/Azure-Active-Directory-Identity/Azure-AD-Conditional-Access-support-for-blocking-legacy-auth-is/ba-p/245417
  • Cómo: bloquear la autenticación heredada en Azure AD con acceso condicional: https://docs.microsoft.com/nl-nl/azure/active-directory/conditional-access/block-legacy-authentication

Artículos relacionados