M365Con 2027 – бесплатная онлайн-конференция · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Шаги анализа злоупотреблений OAuth-приложениями с журналами действий Microsoft Graph

By · · Updated

Выявляйте угрозы OAuth в Microsoft 365 с помощью Entra ID и журнала действий Microsoft Graph. Узнайте, как обнаруживать угрозы для OAuth-приложений с помощью журналов действий и Graph API.

Automatically translated with AI from the original post. Read the English original

Мониторинг использования OAuth-приложений необходим для поддержания безопасности в вашей организации и предотвращения злоупотреблений OAuth-приложениями. Используя журналы действий Microsoft Graph, вы получаете важную видимость того, как работают OAuth-приложения. Эти журналы помогают выявлять возможные злоупотребления OAuth-приложениями и обнаруживать угрозы, связанные с активностью OAuth-приложений.

Установление стандартов соответствия требованиям критически важно ввиду рисков, связанных со злоупотреблениями OAuth-приложениями. Чёткие критерии оценки безопасности и соответствия требованиям помогают выбирать подходящие приложения для использования в организации.

Анализ злоупотреблений OAuth-приложениями с журналами действий Microsoft Graph: 5 неожиданных фактов

При анализе злоупотреблений OAuth-приложениями с журналами действий Microsoft Graph специалисты по расследованию инцидентов безопасности часто обнаруживают неожиданные возможности и ограничения, которые влияют на обнаружение и реагирование.

  1. Журналы действий показывают client_app_id OAuth для событий, связанных с приложениями. Журналы действий Microsoft Graph включают client_app_id (appId приложения) для многих событий входа и согласия. Это позволяет сопоставить подозрительные токены или действия напрямую с зарегистрированным OAuth-приложением, а не только с пользователем.
  2. Активность приложений не сосредоточена в одном месте: важны несколько типов журналов. События, связанные с OAuth, могут быть разделены между журналами входа, журналами аудита и единым журналом действий Microsoft Graph. Если опираться только на один источник, можно пропустить предоставление согласия, выдачу токенов или изменения разрешений приложений, важные для расследований злоупотреблений.
  3. Хранение и экспорт данных могут ограничивать криминалистические временные шкалы, если их не настроить. По умолчанию срок хранения для некоторых журналов действий в клиенте ограничен. Без экспорта через параметры диагностики в рабочую область Log Analytics или учётную запись хранения доказательства злоупотреблений приложениями в прошлом могут быстро потеряться.
  4. Некоторые чувствительные поля скрываются или редактируются в журналах Graph. Для защиты конфиденциальности определённые персональные данные и сведения о токенах усекаются или обфусцируются в полезной нагрузке действий. Чтобы восстановить полную цепочку атаки, требуется сопоставление данных между журналами или с журналами условного доступа.
  5. Уведомления об изменениях и delta-запросы обеспечивают обнаружение почти в реальном времени, но требуют настройки. Microsoft Graph поддерживает уведомления об изменениях (веб-хуки) и delta-запросы для журналов действий, что позволяет автоматически выявлять недавно предоставленные разрешения приложений или аномальные действия приложений. Однако их нужно заранее настроить, чтобы обнаруживать злоупотребления в момент их возникновения.

Главное

Обзор злоупотреблений OAuth-приложениями

Распространённые векторы атак

Злоумышленники часто используют согласие на OAuth-приложения, чтобы получить несанкционированный доступ к конфиденциальным данным. Для обхода мер безопасности они применяют различные тактики. Например, широко распространены фишинговые кампании. Злоумышленники обманом заставляют пользователей вводить коды устройства на легитимных страницах проверки Microsoft. Так они получают маркеры доступа, привязанные к учётным записям жертв. Такие атаки могут обходить традиционные средства контроля безопасности, включая многофакторную аутентификацию.

Кроме того, многие сторонние приложения подключаются к SaaS-платформам с помощью токенов OAuth. Эти токены могут сохранять доступ бессрочно, если им активно не управлять. Это создаёт серьёзный риск: организации могут сами того не осознавая открывать доступ к конфиденциальным данным через приложения, которые уже не используются. Специалисты по безопасности отмечают, что атаки через OAuth особенно трудно обнаружить. Они оставляют минимум криминалистических следов и могут сохраняться даже после сброса паролей.

Долгосрочные риски доступа

Долгосрочные риски, связанные с постоянным доступом OAuth-приложений, вызывают серьёзную тревогу. В облачно-ориентированных средах идентификатор стал новым периметром. Злоумышленники могут получить постоянный доступ к корпоративным системам, не взламывая серверы и не компрометируя пароли. Они используют доверительные отношения, заложенные в современных системах идентификации.

Последствия злоупотребления OAuth-приложениями могут быть серьёзными. Вот некоторые задокументированные риски:

Организациям необходимо сохранять бдительность. Им следует регулярно проверять согласия на использование OAuth-приложений и отслеживать подозрительную активность. Так вы сможете снизить риски, связанные со злоупотреблением OAuth-приложениями, и защитить конфиденциальные данные.

Журналы активности Microsoft Graph для безопасности

Журналы активности Microsoft Graph для безопасности Источник изображения: unsplash

Доступ к журналам активности Microsoft Graph необходим для мониторинга поведения OAuth-приложений. Чтобы эффективно получить журналы, выполните следующие шаги:

  1. Настройте потоковую передачу журналов через диагностические параметры на портале Azure или с помощью API Azure Resource Manager.

  2. Интегрируйте журналы активности с журналами Azure Monitor.

  3. Настройте диагностические параметры через API Azure Resource Manager.

  4. Укажите конечные хранилища, например Azure Log Analytics Workspace, Azure Storage или Azure Event Hubs.

  5. Если журналы отправляются в рабочую область Log Analytics, выполняйте запросы на языке Kusto Query Language (KQL).

Получив доступ к журналам, сосредоточьтесь на ключевых записях, которые могут указывать на подозрительное поведение OAuth-приложений. Вот некоторые записи журнала, на которые стоит обратить внимание:

Подозрительное поведение

Описание

Повышение привилегий для доступа к данным

Приложения, получившие расширенные разрешения, такие как Sites.Read.All или Files.ReadWrite.All, без надлежащего документирования, могут указывать на недобросовестные приложения, нацеленные на кражу данных.

Массовая загрузка данных

Учётная запись, обращающаяся к сотням файлов за короткий промежуток времени, — серьёзный признак возможной утечки данных.

Анонимные или внешние ссылки общего доступа

Создание таких ссылок может использоваться злоумышленниками для эксплуатации настроек доступа к файлам с целью вывода данных.

Шаблоны «загрузил и удалил»

Если пользователи скачивают конфиденциальные файлы и вскоре после этого удаляют их, это может свидетельствовать о попытках скрыть следы кражи данных.

Оповещения в реальном времени играют ключевую роль в обнаружении и реагировании на инциденты злоупотребления OAuth-приложениями. Они дают видимость подозрительной активности и позволяют автоматически реагировать для снижения рисков. Например, OAuth-токены Drift имели увеличенный срок действия, из-за чего клиенты Salesforce не видели, какие приложения подключены к их данным. Скомпрометированные токены могут обходить MFA и SSO, поэтому нужны оповещения в реальном времени, которые выявляют аномалии, например массовые запросы к API.

Чтобы настроить эффективные оповещения в реальном времени, учитывайте следующие рекомендации:

Внедряя эти стратегии, вы укрепите защиту организации и лучше противостоите злоупотреблению OAuth-приложениями.

Методы обнаружения злоупотребления OAuth-приложениями

Detection Methods for OAuth App Abuse Источник изображения: pexels

Запросы KQL

Kusto Query Language (KQL) — мощный инструмент для анализа Microsoft Graph Activity Logs. С его помощью можно выявлять закономерности и аномалии, которые могут указывать на злоупотребление OAuth-приложениями. Вот несколько эффективных подходов к использованию KQL:

Чтобы начать работу с KQL, рассмотрите следующий пример запроса, который проверяет необычную активность входа:

AuditLogs
| where ActivityType == "SignIn"
| where Result == "Failure"
| summarize Count = count() by UserPrincipalName, bin(TimeGenerated, 1h)
| order by Count desc

Этот запрос выявляет пользователей с неудачными попытками входа, что позволяет расследовать возможный несанкционированный доступ.

Автоматизация с помощью PowerShell

Автоматизация на PowerShell может существенно ускорить обнаружение злоупотреблений OAuth-приложениями. Используя скрипты PowerShell, вы можете автоматизировать мониторинг OAuth-приложений и их активности. Вот некоторые инструменты и их возможности:

Инструмент

Функциональность

GraphRunner

Автоматизирует взаимодействие с Microsoft Graph API, может получать токены различными способами и действовать от имени скомпрометированных пользователей, не вызывая оповещений.

AutoGraph

Предоставляет интерфейс с меню для взаимодействия с API, автоматизирует перечисление пользователей и облегчает извлечение данных из различных источников.

С помощью PowerShell можно также создавать скрипты, которые регулярно проверяют избыточные разрешения в приложениях Entra. Такой проактивный подход помогает поддерживать безопасную среду.

Например, можно запустить скрипт, который выводит список всех приложений с высокими привилегиями:

Get-AzureADServicePrincipal | Where-Object { $_.AppRoles -ne $null -and $_.AppRoles.Count -gt 5 }

Эта команда получает субъекты-службы (service principals) с более чем пятью ролями приложений, что позволяет оценить потенциальные риски.

Сочетая запросы KQL и автоматизацию на PowerShell, вы можете повысить возможности обнаружения угроз. Эти методы дают вам инструменты, необходимые для эффективного выявления и реагирования на злоупотребление OAuth-приложениями.

Стратегии смягчения угроз, связанных с идентификацией

Анализ поведения пользователей

Чтобы эффективно снижать риски, связанные с OAuth-приложениями, необходимо анализировать поведение пользователей на предмет аномалий. Инструменты анализа поведения пользователей (UBA) помогут выявить необычные закономерности, которые могут указывать на злоупотребление OAuth-приложениями. Вот несколько методов, которые стоит рассмотреть:

Метод/процесс

Описание

Создание модели поведения

Инструменты UBA создают модели на основе активности пользователей, фиксируя места входа и время использования приложений.

Обнаружение аномалий

Инструменты UBA сравнивают поведение пользователей с установленными моделями, чтобы выявлять отклонения.

Использование ИИ и машинного обучения

Алгоритмы анализируют поведение пользователей во времени и выявляют необычные закономерности, например вход в нерабочее время.

Сравнение с коллегами

Инструменты UBA сопоставляют действия пользователя с действиями его коллег, чтобы выявлять подозрительное поведение, например доступ к несанкционированным данным.

Внедрив эти стратегии, вы сможете на раннем этапе обнаруживать потенциальные угрозы. Важную роль также играют регулярные аудиты OAuth-приложений. Вам следует регулярно проверять разрешения, чтобы убедиться, что они соответствуют ролям пользователей. Расследуйте любые подозрительные приложения, которые могут иметь избыточные права доступа.

Корреляция событий

Корреляция событий — еще одна эффективная стратегия обнаружения угроз, связанных с идентификацией. Этот подход позволяет собрать воедино информацию из различных источников, чтобы выявить вредоносную регистрацию приложений или обход мер безопасности. Вот несколько данных о важности корреляции событий:

Тип доказательств

Статистика/данные

Пробелы в видимости

В 87% расследований специалистам по реагированию приходилось анализировать доказательства из двух и более разных источников.

Сложность среды

Базовые линии безопасности применялись непоследовательно в разных бизнес-подразделениях, что создавало уязвимости, которыми можно было воспользоваться.

Дрейф идентификаций

Учетные записи зачастую имеют больше доступа, чем необходимо, из-за накопленных со временем разрешений.

Сопоставляя события, вы можете составить комплексную оценку рисков. Этот процесс помогает понять, как различные действия связаны между собой, и выявлять закономерности, которые могут указывать на техники злоупотребления OAuth.

Реализация этих стратегий смягчения требует последовательности. Вы можете столкнуться с трудностями, например с сложностью обнаружения атак, которые используют легитимные процессы OAuth. Традиционные средства контроля безопасности часто оказываются бессильны после того, как согласие предоставлено. Однако при проактивном подходе вы можете значительно снизить риск злоупотребления OAuth-приложениями.

Чтобы дополнительно укрепить свою позицию в области безопасности, рассмотрите следующие эффективные стратегии смягчения:

  1. Аудит: регулярно проводите аудит OAuth-приложений, чтобы убедиться в корректности разрешений, и расследуйте подозрительные приложения.

  2. Ограничение пользовательского согласия: Отключите пользовательское согласие для сторонних приложений, чтобы все запросы на авторизацию требовали одобрения администратора.

  3. Управление доступом на основе ролей (RBAC): Внедрите RBAC, чтобы ограничить привилегии пользователей минимально необходимым уровнем.

  4. Обучение пользователей: Проводите регулярные тренинги, чтобы информировать сотрудников об угрозах безопасности и фишинговых техниках.

Сосредоточившись на анализе поведения пользователей и корреляции событий, вы сможете укрепить защиту от угроз, связанных с идентификацией и злоупотреблением OAuth-приложениями.

Подводя итог, анализ злоупотребления OAuth-приложениями выявляет критические уязвимости во многих приложениях. Недавние исследования показывают, что примерно 8% протестированных приложений уязвимы для злоупотребления OAuth. Это подчеркивает необходимость постоянного мониторинга для укрепления вашей позиции в области безопасности.

Вам следует сосредоточиться на:

Применяя эти проактивные стратегии защиты, вы можете существенно снизить риски, связанные со злоупотреблением OAuth-приложениями, и защитить организацию от потенциальных угроз.

Часто задаваемые вопросы

Что такое злоупотребление OAuth-приложениями?

Злоупотребление OAuth-приложениями возникает, когда злоумышленники используют OAuth-приложения для получения несанкционированного доступа к конфиденциальным данным. Часто они применяют такие тактики, как фишинг и фишинг согласия, чтобы заставить пользователей предоставить разрешения.

Как обнаружить злоупотребление OAuth-приложениями?

Обнаружить злоупотребление OAuth-приложениями можно, отслеживая журналы активности Microsoft Graph на предмет подозрительной активности. Обратите внимание на необычные входы, загрузки большого объёма данных и неожиданные изменения разрешений.

Какие риски связаны с фишингом согласия?

Фишинг согласия позволяет злоумышленникам обманом заставить пользователей предоставить доступ к их учётным записям. Это может привести к краже данных, несанкционированному доступу и потенциальному ущербу репутации вашей организации.

Как часто нужно проводить аудит OAuth-приложений?

Аудит OAuth-приложений следует проводить регулярно, в идеале каждые несколько месяцев. Это помогает убедиться, что разрешения остаются уместными, и быстро выявить подозрительные приложения.

Какие шаги можно предпринять, чтобы предотвратить злоупотребление OAuth-приложениями?

Чтобы предотвратить злоупотребление OAuth-приложениями, внедрите строгие средства контроля доступа, отключите согласие пользователей на сторонние приложения и регулярно проводите для сотрудников обучение распознаванию фишинга.

Расследование инцидентов в Microsoft Graph: Log Analytics workspace и обнаружение угроз

Что такое анализ злоупотребления OAuth-приложениями с помощью журналов активности Microsoft Graph?

Анализ злоупотребления OAuth-приложениями с помощью журналов активности Microsoft Graph означает использование активности и журналов Graph API для выявления вредоносной деятельности приложений или злоумышленников, которые неправомерно используют авторизацию OAuth 2.0 в вашей среде Microsoft 365. Вы изучаете вызовы Graph API, шаблоны запросов API, а также журналы входа Microsoft Entra ID вместе с серией журналов активности Graph в Log Analytics workspace, чтобы обнаружить подозрительное поведение OAuth и рискованные OAuth-приложения.

Как включить журналы активности Microsoft Graph и куда они попадают?

Для включения журналов активности Microsoft Graph нужно настроить службы Microsoft 365 и службу Microsoft Graph так, чтобы они отправляли активность Graph API и действия API в Log Analytics workspace (или во внешний SIEM). Используйте параметры диагностики Microsoft Entra ID, чтобы направлять запросы Graph API, журналы Entra ID и события входа в Log Analytics Workspace ID, где можно выполнять запросы к журналам Graph API и запускать запросы обнаружения угроз на Kusto (журнал активности и запрос Kusto).

Какие признаки в вызовах Graph API указывают на подозрительную активность OAuth?

Обращайте внимание на необычные запросы Graph API, например большое количество вызовов Graph API от одного идентификатора приложения, повторные предоставления согласия, повторное использование токенов в разных клиентах или активность Graph API с незнакомых IP-адресов. Сопоставьте их с журналами входа Entra ID, событиями microsoft authentication broker и аномалиями в синхронизации вызовов API, чтобы выявлять угрозы с помощью активности Microsoft Graph и возможного злоупотребления OAuth-приложениями.

Как расследовать рискованные OAuth-приложения с помощью Log Analytics и запросов Kusto?

Используйте Log Analytics workspace, чтобы централизованно хранить журналы Graph API и выполнять запросы Kusto к серии журналов активности Graph. Типичные шаги: загрузить запросы Microsoft Graph API и журналы Entra ID, написать KQL для выявления необычной активности Graph API, анализировать данные по идентификатору приложения и пользователю и сопоставлять их с событиями служб Microsoft 365. Инструкция по использованию Graph включает примеры KQL для обнаружения подозрительных OAuth-токенов и действий API.

Какую роль играет Entra ID в обнаружении злоупотреблений OAuth?

Microsoft Entra ID (ранее Azure AD) предоставляет сигналы идентификации и доступа — журналы Entra ID и журналы входа Entra ID, — которые показывают, какое приложение запросило доступ и какой пользователь дал согласие. Использование этих журналов вместе с Microsoft Graph API и журналами активности Graph API помогает связать события авторизации OAuth 2.0 с запросами API, выявить скомпрометированные учётные данные или вредоносные приложения и применить условный доступ или отозвать разрешения приложений.

Можно ли автоматизировать обнаружение угроз и реагирование на злоупотребление OAuth-приложениями?

Да. Объедините журналы активности Graph API в рабочей области Log Analytics с автоматическими оповещениями и плейбуками, чтобы выявлять угрозы с помощью Microsoft Graph. С помощью KQL настройте оповещения о аномалиях, а затем запускайте автоматическое реагирование (отзыв токенов, блокировка идентификатора приложения, отключение согласия) с помощью вызовов Microsoft Graph API и службы Microsoft Graph, чтобы локализовать вредоносную активность и сократить доступ к ресурсам Microsoft 365.

Какие существуют рекомендации по снижению рисков, связанных с подозрительными приложениями OAuth и рискованными приложениями OAuth?

К рекомендациям относятся: соблюдение принципа наименьших привилегий для приложений, мониторинг запросов Graph API и журналов входа Entra ID, требование согласия администратора только там, где это необходимо, использование условного доступа и MFA, централизация журналов Graph API в рабочей области Log Analytics (с указанием её идентификатора), а также регулярные расследования с использованием журнала активности Graph и запросов Kusto для раннего выявления угроз с помощью активности Microsoft Graph.

Как включить Microsoft Teams и другие службы Microsoft 365 в расследования?

Добавьте телеметрию Microsoft Teams и других служб Microsoft 365 в журналы активности Graph API и сопоставляйте её с запросами Graph API. Многие сценарии злоупотребления OAuth связаны с доступом к почте, файлам или сообщениям Teams. Используя Microsoft Graph API для получения активности конкретных служб и сопоставляя её с журналами Entra ID в Log Analytics, вы увидите полную цепочку от запроса API до доступа к ресурсу и сможете выявлять вредоносную активность во всей экосистеме Microsoft.

Microsoft Graph Change notifications and webhooks Compliance Audit logs Conditional Access Fabric workspace Kusto Query Language (KQL)

Related articles

RSS