Microsoft Exchange 2013 y posteriores, vulnerables a ataques NTLM relay

Fecha de publicación 29/01/2019
Importancia
4 - Alta
Recursos Afectados
  • Microsoft Exchange 2013 y posteriores.
Descripción

Microsoft Exchange 2013 y posteriores no pueden establecer indicadores de firma y sello en el tráfico de autenticación NTLM, lo que podría permitir a un atacante remoto obtener los privilegios del servidor de Exchange con respecto al objeto Dominio en Active Directory.

Solución

Actualmente no se conoce solución práctica para esta vulnerabilidad. Estas serían algunas alternativas:

  • Si no se utilizan las suscripciones push/pull de EWS, puede bloquear la llamada a PushSubscription API que desencadena este ataque, para ello, ejecute los siguientes comandos desde una ventana de Shell de administración de Exchange:
    • New-ThrottlingPolicy -Name NoEWSS Subscription -ThrottlingPolicyScope Organization -EwsMaxSubscriptions 0
    • Restart-WebAppPool -Name MSExchangeServicesAppPool
  • Eliminar los privilegios de Exchange en el objeto del dominio (esta solución ha sido recomendada por el descubridor de la vulnerabilidad. Es recomendable probar cualquier solución en su entorno de pruebas para asegurarse de que funciona correctamente):
    •  Este script de PowerShell puede ejecutarse tanto en el sistema Exchange Server, como en el Domain Controller. Por defecto, buscará entradas de control de acceso vulnerables en el directorio activo actual. Cuando se ejecuta con privilegios de administrador de dominio y la marca -Fix, este script eliminará la capacidad de Exchange para escribir en el objeto de dominio.
    • Tenga en cuenta que si encuentra un error al no reconocer Get-ADDomainController, necesitará instalar e importar el módulo ActiveDirectory PowerShell y, finalmente, ejecutar Fix-DomainObjectDACL.ps1:
      • Import-Module ServerManager
      • Add-WindowsFeature RSAT-AD-PowerShell
      • Import-Module ActiveDirectory
      • .\Fix-DomainObjectDACL.ps1
    • Si el script informa de que se ha encontrado un ACE defectuoso, ejecute:
      • .\Fix-DomainObjectDACL.ps1 -Fix
    • PowerShell puede configurarse para bloquear la ejecución de archivos.ps1 proporcionados por el usuario. Si este es el caso, primero busque su política de ejecución de PowerShell actual:
      • Get-ExecutionPolicy
    • Permita temporalmente la ejecución del script Fix-DomainObjectDACL.ps1 mediante la ejecución:
      • Set-ExecutionPolicy unrestricted
    • Una vez que haya terminado de ejecutar el script Fix-DomainObjectDACL.ps1, vuelva a establecer la política en el valor original tal y como indica Get-ExecutionPolicy:
      • Set-ExecutionPolicy [POLICY]
  • Eliminar los privilegios innecesarios que Exchange tiene sobre el objeto Dominio.
  • Habilitar la firma LDAP y el enlace de canales LDAP para evitar la retransmisión a LDAP y LDAPS, respectivamente.
  • Bloquear los servidores Exchange para que no puedan realizar conexiones a estaciones de trabajo en puertos arbitrarios.
  • Habilitar la protección ampliada para la autenticación en los endpoints de Exchange en IIS (pero no en los endpoints de Exchange, ya que esto haría que Exchange dejase de funcionar). Esto verificará los parámetros de enlace de canales en la autenticación NTLM, que vincula la autenticación NTLM a una conexión TLS y evita la retransmisión a los servicios web de Exchange.
  • Eliminar la clave de registro que hace posible la retransmisión al servidor de Exchange, como se explica en la mitigación de Microsoft para CVE-2018-8518.
  • Establecer el inicio de sesión SMB en servidores Exchange (y preferiblemente en todos los demás servidores y estaciones de trabajo del dominio) para evitar ataques de retransmisión entre protocolos a SMB.
Detalle
  • Microsoft Exchange admite una API llamada Exchange Web Services (EWS). Una de las funciones de la API de EWS, llamada PushSubscription, puede utilizarse para que el servidor Exchange se conecte a un sitio web arbitrario, estas conexiones intentarán negociar con el servidor web arbitrario mediante la autenticación NTLM. A partir de Microsoft Exchange 2013, la autenticación NTLM sobre HTTP falla al establecer los indicadores de firma y sello NTLM, lo que hace que sea vulnerable a los ataques de retransmisión NTLM.
  • Microsoft Exchange está configurado de forma predeterminada con privilegios con respecto al objeto Dominio en Active Directory. Debido a que el grupo Exchange Windows Permissions tiene acceso WriteDacl al objeto Dominio, los privilegios de servidor de Exchange obtenidos mediante esta vulnerabilidad se podrían utilizar para obtener privilegios de administrador en el dominio que contiene el servidor de Exchange vulnerable.
  • Un atacante que posea credenciales para un buzón de correo de Exchange y con la capacidad de comunicarse tanto con un servidor de Microsoft Exchange como con un controlador de dominio de Windows, puede obtener privilegios de administrador de dominio. Un atacante que no se encuentre en posesión de la contraseña también puede realizar un ataque de retransmisión de SMB a HTTP, siempre y cuando se encuentren en el mismo segmento de red que el servidor de Exchange.
  • [Actualización 06/02/2019] Se ha reservado el CVE-2019-0686 para esta vulnerabilidad.

Encuesta valoración