Auditar Office 365

Al igual que entradas anteriores, ésta recoge una pregunta o necesidad frecuente de los equipos de seguridad: auditar lo que sucede en Office 365.

En este caso, recogeré lo que suelo contar habitualmente a los clientes:

  • Habilitar los eventos de auditoría en Office 365
  • Consultar estos eventos de auditoría
  • Integrar estos eventos en un SIEM (por ejemplo OMS)

Eventos de auditoría en Office 365.

El primer paso es habilitar la auditoría de los elementos que os interesan.

Office 365 es un conjunto de servicios: Exchange Online, SharePoint Online, Teams, Yammer, Power BI, Sway, ... (seguro que me dejo alguno). Hay que registrar los eventos de Office 365 que nos interesen. Una forma sencilla de comenzar es habilitar el log unificado de Office 365 (https://support.office.com/en-us/article/Turn-Office-365-audit-log-search-on-or-off-e893b19a-660c-41f2-9074-d3631c95a014). Si disponéis de un entorno de pruebas, os recomiendo usarlo para facilitar la decisión de qué eventos queremos registrar, una aproximación que suelo recomendar es empezar por Exchange Online, habilitar la auditoría en los buzones de correo y revisar los eventos de auditoría para adaptarlos a nuestras necesidades.

 $Creds = Get-Credential 
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell -Credential $Creds -Authentication basic -AllowRedirection
Import-PSSession $Session

Set-AdminAuditLogConfig -UnifiedAuditLogIngestionEnabled $true

Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | Set-Mailbox -AuditEnabled $true
Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | Set-Mailbox -AuditLogAgeLimit 180

Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | FL Name,Audit*

Consultar los eventos de auditoría.

Ya tenemos habilitada la auditoría con los eventos que nos interesa (o estamos en ello) y lo que necesitamos es hacer consultas sobre estos eventos.

Lo más habitual es que los usuarios que necesitan hacer consultas, dispongan de cuentas de usuario con los permisos adecuados delegados para hacer las consultas. Para conseguir estos permisos, se pueden usar los roles existentes (incluyendo los roles de Exchange) o se pueden crear delegaciones personalizadas según las necesidades.

La herramienta que suelo recomendar para ello es https://protection.office.com (el centro de seguridad y cumplimiento de Office 365.

Para más información sobre como hacer las consultas, ver el artículo:  https://support.office.com/en-us/article/Search-the-audit-log-in-the-Office-365-Security-Compliance-Center-0d4d0f35-390b-4518-800e-0c7ec95e946c  

Integración con SIEM.

Las principales dudas vienen a la hora de integrar estos eventos con el SIEM corporativo. La mayoría de las organizaciones ya disponen de un SIEM para los eventos de seguridad y quieren integrar los eventos de Office 365. Es importante tener habilitado el registro de los eventos que necesitemos (lo que no se habilite no aparecerá).
En Azure AD, se creará una aplicación para conceder acceso a los log al SIEM. Este proceso se hace una única vez de manera que el SIEM se conecte con las credenciales de esa aplicación para descargarse los eventos. Normalmente, el fabricante del SIEM tiene documentado el procedimiento para crear esa aplicación, y en algunos casos (como OMS) la creación de la aplicación se realiza de manera automática.

A partir de este momento, los eventos llegarán al SIEM y se podrá trabajar con ellos. Al igual que en el caso anterior, suelo recomendar tener un entorno de prueba y en esos casos, añadir OMS es realmente sencillo: /en-us/azure/operations-management-suite/oms-solution-office-365