Как событие Microsoft 365 MailItemsAccessed помогает судебным расследованиям
Microsoft предоставила доступ к событию MailItemsAccessed
, чтобы оно отображалось в журналах расширенного аудита. Мы рассмотрим, как это используется для расследования предполагаемых скомпрометированных почтовых учетных записей.
Почему хорошее ведение журнала имеет решающее значение
В той или иной степени операционные системы, сетевые устройства, программные приложения и программные службы создают журналы диагностики. Сопоставляя временные метки в журналах, вы можете создать точную картину того, что происходило в вашей сети в любой момент времени.
Действия пользователя, взаимодействие между процессами, доступ к файлам, сетевой трафик, проходящий через вашу сеть, входящие и исходящие соединения и многое другое регистрируются. За этим нет никакой зловещей повестки дня. Ведение журнала и последующий анализ этих журналов — стандартная процедура при диагностике операционных проблем или инцидентов кибербезопасности.
Когда вы пытаетесь выяснить, как система была скомпрометирована и что сделал злоумышленник, получив доступ к вашей системе, изучение журналов всегда является одним из первых шагов. Возможность обратиться к подробному отчету о событиях лучше, чем пытаться собрать воедино то, что произошло, только на основании показаний пользователей.
Пользователи ограничены описанием того, что они испытали, и того, что они видели в системе. Несмотря на то, что они стараются быть полезными, все, что они могут вам дать, — это их воспоминания о видимых симптомах инцидента. Это не дает никакого представления о том, что пострадавшие устройства и системы делали внутри — или думали, что они делали — во время инцидента. А следователям нужен такой уровень информации, чтобы определить первопричину происшествия.
Очевидно, что чем более подробными будут ваши журналы, тем полезнее они будут в криминалистической или диагностической ситуации. Чем более детализирована информация, которую предоставляют устройства, и чем чаще эта информация записывается в журнал, тем лучше.
Вам нужна лицензия E5 или G5
Microsoft недавно сделала событие другого типа — MailItemsAccessed
— отображаемым в журналах расширенного аудита в Microsoft 365. Это важно, поскольку позволяет следователям видеть, к каким почтовым элементам был получен доступ в результате кибератаки. Это событие уже существовало ранее, но только недавно оно было раскрыто и разрешено фильтроваться в журналах.
Знание того, какие элементы электронной почты были доступны во время кибератаки, может помочь вам предотвратить использование данных, содержащихся в этих электронных письмах. Это также может быть требованием защиты данных, чтобы вы могли идентифицировать скомпрометированные электронные письма, отправителей и получателей этих электронных писем.
Событие MailItemsAccessed
позволит вам сделать это, но расширенный аудит доступен не для всех в Microsoft 365. Он доступен для организаций с подпиской Microsoft 365 Enterprise E5 или G5. Эти лицензии обеспечивают функциональность расширенного аудита и хранение файлов журналов в течение одного года. При желании вы можете продлить его до 10 лет. Этот вариант хранения в течение 10 лет позволяет организациям проводить расследования исторических событий и выполнять обязательства по защите данных, юридические или другие обязательства.
Событие MailItemsAccessed
Событие MailItemsAccessed
запускается при доступе к электронной почте. Если злоумышленник получит доступ к учетной записи Microsoft 365, действие MailItemsAccessed
будет запущено и зарегистрировано в журнале, даже если нет явных указаний на то, что скомпрометированные электронные письма были прочитаны. Простого доступа к электронной почте достаточно, чтобы вызвать событие. Конечно, событие возникает, когда обычный пользователь также законно получает доступ к своей электронной почте, но расследование будет сосредоточено на определенных периодах времени, что позволит отбросить действия обычного пользователя.
Событие почтового ящика MailItemsAccessed
заменяет старое событие под названием MessageBind
и предоставляет несколько улучшений:
-
MailItemsAccessed
применяется ко всем типам входа.MessageBind
не мог создавать отчеты по обычным пользователям и делегатам электронной почты. Он сообщал только о входах в системуAuditAdmin
. - Событие
MailItemsAccessed
запускается событиями sync и событиями bind. Событие синхронизации возникает, когда почта синхронизируется с почтовым клиентом. Это может повлиять на многие электронные письма. Событие привязки возникает при доступе к одному электронному письму. СобытияMessageBind
вызывались только для событий синхронизации. - Событие
MailItemsAccessed
менее шумное. СобытиеMessageBind
может запускаться повторно для одного и того же сообщения электронной почты.
В организации может быть много событий привязки, инициированных в непрерывном потоке в течение всего дня. Microsoft 365 сокращает количество событий, объединяя их в двухминутные последовательности. Если один почтовый ящик создает более 1000 событий привязки в течение 24 часов, Microsoft 365 ограничивает ведение журнала событий для этого почтового ящика на следующие 24 часа. Это важно учитывать при расследовании.
Использование MailItemsAccessed в поиске
Для поиска в журналах расширенного аудита в Microsoft 365 вам должны быть назначены роли журналов аудита только для просмотра или журналов аудита. Поиск выполняется с помощью Exchange Online Powershell или Центра безопасности и соответствия требованиям Майкрософт.
Если он еще не включен, вам необходимо включить возможность аудита поиска:
Set-AdminAuditLogConfig -UnifiedAuditLogIngestionEnabled $true
Это общая команда для поиска в журналах аудита почтовых ящиков событий MailItemsAccessed
в течение указанного периода для указанной учетной записи пользователя.
Search-MailboxAuditLog -Identity -StartDate 02/01/2021 -EndDate 02/28/2021 -Operations MailItemsAccessed -ResultSize 1000 -ShowDetails
Исследование взломанного почтового ящика
Первый шаг — проверить, был ли почтовый ящик отрегулирован. Если это так, вы должны предположить наихудший сценарий и рассматривать все электронные письма для этой учетной записи пользователя за этот 24-часовой период как скомпрометированные.
Это вернет записи MailItemsAccessed
, которые были созданы, когда почтовый ящик был ограничен, в течение указанного периода для указанной учетной записи пользователя.
Search-MailboxAuditLog -StartDate 02/01/2021 -EndDate 02/28/2021 -Identity -Operations MailItemsAccessed -ResultSize 10000 -ShowDetails | Where {$_.OperationProperties -like "IsThrottled:True"} | FL
Вам необходимо знать, имели ли место какие-либо события синхронизации. Если это так, злоумышленник загрузил электронное письмо в свой локальный почтовый клиент. Затем они могут отключиться от сервера и просматривать и искать электронную почту, не создавая больше никаких событий на сервере.
Эта команда ищет события синхронизации в течение указанного периода для указанной учетной записи пользователя.
Search-MailboxAuditLog -StartDate 02/01/2021 -EndDate 02/28/2021 -Identity -Operations MailItemsAccessed -ResultSize 10000 -ShowDetails | Where {$_.OperationProperties -like "MailAccessType:Sync"} | FL
Если обнаружены какие-либо события синхронизации, вам необходимо определить по IP-адресу, было ли это действие выполнено злоумышленником. Если это так, вам снова нужно предположить наихудший сценарий и исходить из того, что весь почтовый ящик был скомпрометирован.
Вы также должны искать события привязки для скомпрометированного почтового ящика за интересующий период.
Search-MailboxAuditLog -StartDate 02/01/2021 -EndDate 02/28/2021 -Identity -Operations MailItemsAccessed -ResultSize 10000 -ShowDetails | Where {$_.OperationProperties -like "MailAccessType:Bind"} | FL
Сообщения электронной почты Microsoft 365 идентифицируются по идентификатору интернет-сообщения, хранящемуся в их значении InternetMessageId
. Вы можете использовать результаты поиска привязки, чтобы идентифицировать отдельные электронные письма. Затем вы можете просмотреть их, чтобы узнать, содержат ли они какую-либо важную или конфиденциальную информацию компании.
Вы можете сделать это и наоборот. Если вы знаете InternetMessageId
сообщений электронной почты, которые, как известно, содержат конфиденциальную информацию, вы можете выполнить поиск этих InternetMessageId
результатов.
Реальный пример
Группа облачной криминалистики Агентства кибербезопасности и безопасности инфраструктуры (CISA) выпустила скрипт, предназначенный для обнаружения возможных скомпрометированных учетных записей и приложений в средах Microsoft Azure и Microsoft 365.
Сценарий установит все необходимые ему модули PowerShell, которых нет на машине, используемой для исследования. Затем:
- Проверяет единый журнал аудита в средах Azure/Microsft 365 на наличие типичных признаков компрометации.
- Список доменов Azure AD.
- Проверяет субъекты-службы Azure и их разрешения API Microsoft Graph, чтобы попытаться идентифицировать действия злоумышленников.
- Создает несколько CSV-файлов для дальнейшего просмотра.
Событие MailItemsAccessed
упоминается в сценарии несколько раз. Это короткий раздел сценария, который использует событие MailItemsAccessed
для проверки того, был ли осуществлен доступ к почтовым элементам.
If ($AppIdInvestigation -eq "Single"){ If ($LicenseAnswer -eq "Yes"){ #Searches for the AppID to see if it accessed mail items. Write-Verbose "Searching for $SusAppId in the MailItemsAccessed operation in the UAL." $SusMailItems = Search-UnifiedAuditLog -StartDate $StartDate -EndDate $EndDate -Operations "MailItemsAccessed" -ResultSize 5000 -FreeText $SusAppId -Verbose | Select-Object -ExpandProperty AuditData | Convertfrom-Json #You can modify the resultant CSV output by changing the -CsvName parameter #By default, it will show up as MailItems_Operations_Export.csv If ($null -ne $SusMailItems){ #Determines if the AppInvestigation sub-directory by displayname path exists, and if not, creates that path Export-UALData -ExportDir $InvestigationExportParentDir -UALInput $SusMailItems -CsvName "MailItems_Operations_Export" -WorkloadType "EXO" } Else{ Write-Verbose "No MailItemsAccessed data returned for $($SusAppId) and no CSV will be produced." } } Else{ Write-Host "MailItemsAccessed query will be skipped as it is not present without an E5/G5 license." }
Скрипт и некоторые другие полезные инструменты находятся в свободном доступе вместе с подробными инструкциями по их использованию.