Detectar y corregir reglas de Outlook y ataques por inyección de Forms personalizados
Sugerencia
¿Sabía que puede probar las características de Microsoft Defender para Office 365 Plan 2 de forma gratuita? Use la prueba de Defender para Office 365 de 90 días en el centro de pruebas del portal de Microsoft Defender. Obtenga información sobre quién puede registrarse y los términos de prueba en Probar Microsoft Defender para Office 365.
Resumen Obtenga información sobre cómo reconocer y corregir las reglas de Outlook y los ataques por inyección de Forms personalizados en Office 365.
¿Cuál es el ataque por inyección de Forms personalizado y reglas de Outlook?
Una vez que un atacante obtiene acceso a su organización, intenta establecer un punto de apoyo para permanecer en o volver a entrar después de que se detecte. Esta actividad se denomina establecimiento de un mecanismo de persistencia. Hay dos maneras en que un atacante puede usar Outlook para establecer un mecanismo de persistencia:
- Mediante la explotación de reglas de Outlook.
- Mediante la inserción de formularios personalizados en Outlook.
Volver a instalar Outlook o incluso dar a la persona afectada un nuevo equipo no ayuda. Cuando la nueva instalación de Outlook se conecta al buzón, todas las reglas y formularios se sincronizan desde la nube. Las reglas o formularios se suelen diseñar para ejecutar código remoto e instalar malware en el equipo local. El malware roba credenciales o realiza otra actividad ilícita.
La buena noticia es que, si mantiene los clientes de Outlook revisados a la versión más reciente, no es vulnerable a la amenaza, ya que los valores predeterminados del cliente actual de Outlook bloquean ambos mecanismos.
Los ataques suelen seguir estos patrones:
Vulnerabilidad de seguridad de reglas:
- El atacante roba las credenciales de un usuario.
- El atacante inicia sesión en el buzón de Exchange de ese usuario (Exchange Online o exchange local).
- El atacante crea una regla de bandeja de entrada de reenvío en el buzón de correo. La regla de reenvío se desencadena cuando el buzón recibe un mensaje específico del atacante que coincide con las condiciones de la regla. Las condiciones de regla y el formato de mensaje se adaptan entre sí.
- El atacante envía el correo electrónico del desencadenador al buzón en peligro, que sigue siendo utilizado con normalidad por el usuario desprevenido.
- Cuando el buzón recibe un mensaje que coincide con las condiciones de regla, se aplica la acción de la regla. Normalmente, la acción de regla consiste en iniciar una aplicación en un servidor remoto (WebDAV).
- Normalmente, la aplicación instala malware en el equipo del usuario (por ejemplo, PowerShell Empire).
- El malware permite al atacante robar (o robar de nuevo) el nombre de usuario y la contraseña del usuario u otras credenciales de la máquina local y realizar otras actividades malintencionadas.
Vulnerabilidad de seguridad de Forms:
- El atacante roba las credenciales de un usuario.
- El atacante inicia sesión en el buzón de Exchange de ese usuario (Exchange Online o exchange local).
- El atacante inserta una plantilla de formulario de correo personalizado en el buzón del usuario. El formulario personalizado se desencadena cuando el buzón recibe un mensaje específico del atacante que requiere que el buzón cargue el formulario personalizado. El formulario personalizado y el formato de mensaje se personalizan entre sí.
- El atacante envía el correo electrónico del desencadenador al buzón en peligro, que sigue siendo utilizado con normalidad por el usuario desprevenido.
- Cuando el buzón recibe el mensaje, el buzón carga el formulario necesario. El formulario inicia una aplicación en un servidor remoto (WebDAV).
- Normalmente, la aplicación instala malware en el equipo del usuario (por ejemplo, PowerShell Empire).
- El malware permite al atacante robar (o robar de nuevo) el nombre de usuario y la contraseña del usuario u otras credenciales de la máquina local y realizar otras actividades malintencionadas.
¿Qué aspecto podría tener un ataque por inyección de Forms personalizado y reglas Office 365?
Es poco probable que los usuarios observen estos mecanismos de persistencia e incluso podrían ser invisibles para ellos. En la lista siguiente se describen los signos (indicadores de compromiso) que indican que se requieren pasos de corrección:
Indicadores del compromiso de reglas:
- La acción de regla es iniciar una aplicación.
- Regla Hace referencia a una dirección EXE, ZIP o URL.
- En la máquina local, busque nuevos inicios de proceso que se originen en el PID de Outlook.
Los indicadores de los formularios personalizados están en peligro:
- Formularios personalizados presentes guardados como su propia clase de mensaje.
- La clase message contiene código ejecutable.
- Normalmente, los formularios malintencionados se almacenan en las carpetas Biblioteca de Forms Personal o Bandeja de entrada.
- El formulario se denomina IPM. Nota. [nombre personalizado].
Pasos para encontrar signos de este ataque y confirmarlo
Puede usar cualquiera de los métodos siguientes para confirmar el ataque:
Examine manualmente las reglas y los formularios de cada buzón mediante el cliente de Outlook. Este método es exhaustivo, pero solo puede comprobar un buzón a la vez. Este método puede llevar mucho tiempo si tiene muchos usuarios que comprobar y también puede infectar el equipo que está usando.
Use el script de PowerShellGet-AllTenantRulesAndForms.ps1 para volcar automáticamente todas las reglas de reenvío de correo y los formularios personalizados para todos los usuarios de la organización. Este método es el más rápido y seguro con la menor cantidad de sobrecarga.
Nota:
A partir de enero de 2021, el script (y todo lo demás del repositorio) es de solo lectura y se archiva. Las líneas 154 a 158 intentan conectarse a Exchange Online PowerShell mediante un método que ya no se admite debido al desuso de las conexiones remotas de PowerShell en julio de 2023. Quite las líneas 154 a 158 y Conéctese a Exchange Online PowerShell antes de ejecutar el script.
Confirmación del ataque de reglas mediante el cliente de Outlook
Abra el cliente de Outlook de los usuarios como usuario. Es posible que el usuario necesite ayuda para examinar las reglas de su buzón de correo.
Consulte el artículo Administración de mensajes de correo electrónico mediante reglas para ver los procedimientos para abrir la interfaz de reglas en Outlook.
Busque las reglas que el usuario no creó o las reglas o reglas inesperadas con nombres sospechosos.
Busque en la descripción de la regla las acciones de regla que se inicien y a la aplicación o que hagan referencia a un .EXE, .ZIP archivo o que inicien una dirección URL.
Busque los nuevos procesos que empiecen a usar el identificador de proceso de Outlook. Consulte Buscar el identificador de proceso.
Pasos para confirmar el ataque Forms mediante el cliente de Outlook
Abra el cliente de Outlook del usuario como usuario.
Siga los pasos descritos en la pestaña Mostrar el programador de la versión del usuario de Outlook.
Abra la pestaña ahora visible para desarrolladores en Outlook y seleccione diseñar un formulario.
Seleccione la Bandeja de entrada en la lista Buscar en . Busque los formularios personalizados. Los formularios personalizados son lo suficientemente raros como para que, si tiene formularios personalizados, valga la pena un vistazo más profundo.
Investigue los formularios personalizados, especialmente los formularios marcados como ocultos.
Abra los formularios personalizados y, en el grupo Formulario , seleccione Ver código para ver qué se ejecuta cuando se carga el formulario.
Pasos para confirmar las reglas y Forms ataque mediante PowerShell
La manera más sencilla de comprobar un ataque de reglas o formularios personalizados es ejecutar el script de PowerShellGet-AllTenantRulesAndForms.ps1. Este script se conecta a todos los buzones de correo de la organización y volca todas las reglas y formularios en dos archivos .csv.
Requisitos previos
Debe ser miembro del rol Administrador* global en Microsoft Entra ID o el grupo de roles Administración de la organización en Exchange Online, ya que el script se conecta a todos los buzones de la organización para leer reglas y formularios.
Importante
* Microsoft recomienda usar roles con los permisos más mínimos. El uso de cuentas con permisos inferiores ayuda a mejorar la seguridad de su organización. Administrador global es un rol con muchos privilegios que debe limitarse a escenarios de emergencia cuando no se puede usar un rol existente.
Use una cuenta con derechos de administrador local para iniciar sesión en el equipo donde tiene previsto ejecutar el script.
Descargue o copie el contenido del script deGet-AllTenantRulesAndForms.ps1 desde GitHub en una carpeta desde la que sea fácil encontrar y ejecutar el script. El script crea dos archivos con marca de fecha en la carpeta:
MailboxFormsExport-yyyy-MM-dd.csv
yMailboxRulesExport-yyyy-MM-dd.csv
.Quite las líneas 154 a 158 del script, porque ese método de conexión ya no funciona a partir de julio de 2023.
Navegue en PowerShell a la carpeta donde guardó el script y, a continuación, ejecute el siguiente comando:
.\Get-AllTenantRulesAndForms.ps1
Interpretación de la salida
-
MailboxRulesExport-yyyy-MM-dd.csv: Examine las reglas (una por fila) en busca de condiciones de acción que incluyan aplicaciones o ejecutables:
-
ActionType (columna A): es probable que la regla sea malintencionada si esta columna contiene el valor
ID_ACTION_CUSTOM
. -
IsPotentiallyMalicious (columna D): es probable que la regla sea malintencionada si esta columna contiene el valor
TRUE
. -
ActionCommand (columna G): es probable que la regla sea malintencionada si esta columna contiene cualquiera de los siguientes valores:
- Una aplicación.
- Un archivo .exe o .zip.
- Una entrada desconocida que hace referencia a una dirección URL.
-
ActionType (columna A): es probable que la regla sea malintencionada si esta columna contiene el valor
- MailboxFormsExport-aaaa-MM-dd.csv: En general, el uso de formularios personalizados es poco frecuente. Si encuentra alguno en este libro, abra el buzón de ese usuario y examine el propio formulario. Si su organización no la puso allí intencionadamente, es probable que sea malintencionada.
Cómo detener y corregir las reglas de Outlook y Forms ataque
Si encuentra alguna evidencia de cualquiera de estos ataques, la corrección es sencilla: simplemente elimine la regla o el formulario en el buzón. Puede eliminar la regla o el formulario mediante el cliente de Outlook o mediante Exchange PowerShell.
Uso de Outlook
Identifique todos los dispositivos en los que el usuario ha usado Outlook. Todos ellos deben limpiarse de posibles malware. No permita que el usuario inicie sesión y use el correo electrónico hasta que se hayan limpiado todos los dispositivos.
En cada dispositivo, siga los pasos descritos en Eliminar una regla.
Si no está seguro de la presencia de otro malware, puede dar formato y volver a instalar todo el software en el dispositivo. En el caso de los dispositivos móviles, puede seguir los pasos de los fabricantes para restablecer el dispositivo a la imagen de fábrica.
Instale las versiones más actualizadas de Outlook. Recuerde que la versión actual de Outlook bloquea ambos tipos de este ataque de forma predeterminada.
Una vez que se hayan quitado todas las copias sin conexión del buzón de correo, siga estos pasos:
- Restablezca la contraseña del usuario con un valor de alta calidad (longitud y complejidad).
- Si la autenticación multifactor (MFA) no está activada para el usuario, siga los pasos descritos en Configuración de la autenticación multifactor para usuarios.
Estos pasos garantizan que las credenciales del usuario no se exponen a través de otros medios (por ejemplo, suplantación de identidad (phishing) o reutilización de contraseñas.
Con PowerShell
Conéctese al entorno de Exchange PowerShell necesario:
Buzones de correo en servidores de Exchange locales: conéctese a servidores exchange mediante PowerShell remoto o abra el Shell de administración de Exchange.
Buzones de Exchange Online: conéctese a Exchange Online PowerShell.
Después de conectarse al entorno de Exchange PowerShell necesario, puede realizar las siguientes acciones en las reglas de bandeja de entrada en los buzones de usuario:
Ver reglas de bandeja de entrada en un buzón:
Ver una lista de resumen de todas las reglas
Get-InboxRule -Mailbox laura@contoso.onmicrosoft.com
Vea información detallada de una regla específica:
Get-InboxRule -Mailbox laura@contoso.onmicrosoft.com -Identity "Suspicious Rule Name" | Format-List
Para obtener información detallada sobre la sintaxis y los parámetros, vea Get-InboxRule.
Quitar reglas de bandeja de entrada de un buzón:
Quite una regla específica:
Remove-InboxRule -Mailbox laura@contoso.onmicrosoft.com -Identity "Suspicious Rule Name"
Quite todas las reglas:
Get-InboxRule -Mailbox laura@contoso.onmicrosoft.com | Remove-InboxRule
Para obtener información detallada sobre la sintaxis y los parámetros, consulte Remove-InboxRule.
Desactive una regla de bandeja de entrada para una investigación más detallada:
Disable-InboxRule -Mailbox laura@contoso.onmicrosoft.com -Identity "Suspicious Rule Name"
Para obtener información detallada sobre la sintaxis y los parámetros, vea Disable-InboxRule.
Cómo minimizar ataques futuros
En primer lugar: proteger cuentas
Las vulnerabilidades de seguridad reglas y Forms solo las usa un atacante después de haber robado o infringido la cuenta de un usuario. Por lo tanto, el primer paso para evitar el uso de estas vulnerabilidades de seguridad en su organización es proteger de forma agresiva las cuentas de usuario. Algunas de las formas más comunes de vulnerar las cuentas son a través de ataques de suplantación de identidad (phishing) o ataques de difusión de contraseñas.
La mejor manera de proteger las cuentas de usuario (especialmente las cuentas de administrador) es configurar MFA para los usuarios. También debe:
Supervise cómo se accede y se usa a las cuentas de usuario. Es posible que no impida la vulneración inicial, pero puede acortar la duración y los efectos de la infracción detectándola antes. Puede usar estas directivas de Office 365 Cloud App Security para supervisar cuentas y alertarle de la actividad inusual:
Varios intentos de inicio de sesión erróneos: desencadena una alerta cuando los usuarios realizan varias actividades de inicio de sesión con errores en una sola sesión con respecto a la línea base aprendida, lo que podría indicar un intento de infracción.
Viaje imposible: desencadena una alerta cuando se detectan actividades del mismo usuario en diferentes ubicaciones dentro de un período de tiempo menor que el tiempo de viaje esperado entre las dos ubicaciones. Esta actividad podría indicar que un usuario diferente usa las mismas credenciales. La detección de este comportamiento anómalo requiere un período de aprendizaje inicial de siete días para aprender el patrón de actividad de un nuevo usuario.
Actividad suplantada inusual (por usuario): desencadena una alerta cuando los usuarios realizan varias actividades suplantadas en una sola sesión con respecto a la línea base aprendida, lo que podría indicar un intento de vulneración.
Use una herramienta como Office 365 Puntuación de seguridad para administrar los comportamientos y las configuraciones de seguridad de la cuenta.
Segundo: Mantener los clientes de Outlook actualizados
Las versiones totalmente actualizadas y revisadas de Outlook 2013 y 2016 deshabilitan la acción de formulario o regla "Iniciar aplicación" de forma predeterminada. Incluso si un atacante infringe la cuenta, se bloquean las acciones de regla y formulario. Puede instalar las actualizaciones y revisiones de seguridad más recientes siguiendo los pasos descritos en Instalación de actualizaciones de Office.
Estas son las versiones de revisión para los clientes de Outlook 2013 y 2016:
- Outlook 2016: 16.0.4534.1001 o superior.
- Outlook 2013: 15.0.4937.1000 o superior.
Para obtener más información sobre las revisiones de seguridad individuales, consulte:
Tercero: Supervisión de clientes de Outlook
Incluso con las revisiones y actualizaciones instaladas, es posible que un atacante cambie la configuración de la máquina local para volver a habilitar el comportamiento "Iniciar aplicación". Puede usar Advanced directiva de grupo Management para supervisar y aplicar directivas de máquina local en dispositivos cliente.
Puede ver si se ha vuelto a habilitar "Iniciar aplicación" mediante una invalidación en el Registro mediante la información de Cómo ver el registro del sistema mediante versiones de 64 bits de Windows. Compruebe estas subclaves:
-
Outlook 2016:
HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Security\
-
Outlook 2013:
HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Outlook\Security\
Busque la clave EnableUnsafeClientMailRules
:
- Si el valor es 1, se ha invalidado la revisión de seguridad de Outlook y el equipo es vulnerable al ataque Formulario/Reglas.
- Si el valor es 0, se deshabilita la acción "Iniciar aplicación".
- Si la clave del Registro no está presente y la versión actualizada y revisada de Outlook está instalada, el sistema no es vulnerable a estos ataques.
Los clientes con instalaciones de Exchange locales deben considerar la posibilidad de bloquear versiones anteriores de Outlook que no tengan revisiones disponibles. Puede encontrar detalles sobre este proceso en el artículo Configurar el bloqueo de cliente de Outlook.
Vea también:
- Las reglas malintencionadas de Outlook de SilentBreak Security Post acerca del vector de reglas proporcionan una revisión detallada de cómo las reglas de Outlook.
- MAPI sobre HTTP y Mailrule Pwnage en el blog de Sensepost sobre Mailrule Pwnage describe una herramienta denominada Ruler que le permite aprovechar los buzones a través de reglas de Outlook.
- Formularios y shells de Outlook en el blog de Sensepost sobre Forms Vector de amenaza.
- Código base de regla
- Indicadores de compromiso de la regla