Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Приложения уязвимы для нарушений безопасности и, соответственно, должны отслеживаться. Несмотря на то, что по сравнению с учетными записями пользователей приложения реже являются объектами для атак, такие нарушения все же возможны. Поскольку приложения часто выполняются без участия человека, подобные атаки во многих случаях сложнее обнаружить.
В этой статье приводятся рекомендации по мониторингу событий приложений и использованию оповещений. Мы регулярно обновляем ее, чтобы помочь вам в следующем:
Предотвращать несанкционированный доступ вредоносных приложений к данным.
Предотвращать риск компрометации приложений вредоносными субъектами.
Собирать аналитические данные, позволяющие более безопасно создавать и настраивать новые приложения.
Если вы не знакомы с тем, как приложения работают в идентификаторе Microsoft Entra, см. статью "Приложения и субъекты-службы" в идентификаторе Microsoft Entra.
Примечание.
Если вы еще не ознакомились с обзором операций безопасности Microsoft Entra, попробуйте сделать это сейчас.
Что искать
В процессе отслеживания событий входа в приложение обращайте внимание на пункты приведенного ниже списка, которые помогут отличить нормальные действия от вредоносных. Перечисленные ниже события могут указывать на проблемы безопасности. Каждое из них рассматривается в статье.
Любые изменения, происходящие в нарушение обычных бизнес-процессов и расписаний.
Изменение учетных данных приложения.
Разрешения приложения
Субъект-служба, назначенный идентификатору Microsoft Entra или роли управления доступом на основе ролей Azure (RBAC)
Приложениям предоставлены разрешения с высоким уровнем привилегий.
изменения в Azure Key Vault;
предоставление конечным пользователем согласия для приложения;
Прекращение согласия конечного пользователя на основе уровня риска.
Изменения конфигурации приложения
изменение универсального кода ресурса (URI) или использование нестандартного кода;
изменение владельцев приложений;
Изменены URL-адреса для выхода.
Где искать
Для исследования и мониторинга используйте файлы журнала:
В портале Azure можно просматривать журналы аудита Microsoft Entra и скачивать их в виде файлов с разделителями-запятыми (CSV) или в формате нотации объектов JavaScript (JSON). В портал Azure есть несколько способов интеграции журналов Microsoft Entra с другими средствами, которые позволяют обеспечить большую автоматизацию мониторинга и оповещений:
Microsoft Sentinel включает интеллектуальную аналитику безопасности на корпоративном уровне за счет возможностей управления информационной безопасностью и событиями безопасности (SIEM).
Sigma-правила. Sigma — это развивающийся открытый стандарт для написания правил и шаблонов, которые автоматизированные средства управления могут использовать для анализа файлов журналов. В случаях, когда существуют шаблоны Sigma для рекомендуемых нами критериев поиска, мы добавили ссылку на репозиторий Sigma. Шаблоны Sigma не создаются, не проверяются и не управляются корпорацией Майкрософт. Репозиторий и шаблоны создаются и собираются международным сообществом специалистов по ИТ-безопасности.
Azure Monitor — автоматический мониторинг и оповещение о различных условиях. с возможностью создавать или использовать рабочие книги для объединения данных из разных источников.
Центры событий Azure интегрированы с SIEM системами, включая журналы Microsoft Entra,которые можно интегрировать с другими SIEM-системами, такими как Splunk, ArcSight, QRadar и Sumo Logic, через интеграцию с Центрами событий Azure. Microsoft Defender for Cloud Apps позволяет обнаруживать и администрировать приложения, управлять приложениями и ресурсами, а также проверять облачные приложения на соответствие требованиям.
Защита удостоверений рабочих нагрузок с помощью Microsoft Entra ID Protection — выявляет риски для удостоверений рабочих нагрузок на основе поведения при входе и автономных индикаторов компрометации.
Основное, что вы отслеживаете и на что создаете оповещения, это эффекты ваших политик условного доступа. Используйте книгу аналитики и отчетности по условному доступу для проверки влияния одной или нескольких политик условного доступа на входы в систему и результатов их применения, включая состояние устройств. Эту книгу можно использовать для просмотра сводки и определения эффектов за тот или иной период времени, Вы можете использовать рабочую книгу для исследования входов конкретного пользователя.
Оставшуюся часть этой статьи мы рекомендуем использовать для мониторинга и оповещения. Сведения упорядочены по типам угроз. Если существуют готовые решения, мы приводим ссылки на них или предоставляем примеры после таблицы. В противном случае можно создавать оповещения с помощью предыдущих средств.
Учетные данные приложения
Многие приложения используют учетные данные для проверки подлинности в идентификаторе Microsoft Entra. Любые другие учетные данные, добавляемые вне рамок обычных процессов, могут использоваться злоумышленниками. Вместо секретов клиента мы рекомендуем использовать сертификаты X509, выданные доверенными центрами, или управляемые удостоверения. Тем не менее, если вам необходимо использовать секреты клиента, следуйте принятым рекомендациям по обеспечению безопасности приложений. Обратите внимание, что обновления приложения и главного объекта безопасности регистрируются в журнале аудита в виде двух записей.
Следите за приложениями для выявления учетных данных с длительным сроком истечения.
Замените долго действующие учетные данные на учетные данные с меньшим сроком действия. Примите меры, чтобы учетные данные не фиксировались в репозиториях кода и хранились безопасно.
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Добавление учетных данных в существующие приложения | Высокая | Журналы аудита Microsoft Entra | Каталог Service-Core, Категория ApplicationManagement Действие: обновление сертификатов приложения и управление секретами -и- Действие: обновление сервисного принципала/обновление приложения |
Оповещать, когда учетные записи: добавляются вне обычного графика или рабочих процессов, относятся к типам, которые не используются в вашей среде, или добавляются в поток, не поддерживающий SAML, но поддерживающий субъект-службу. Шаблон Microsoft Sentinel Sigma-правила |
| Учетные данные, срок действия которых выходит за пределы, установленные вашими политиками безопасности. | Средняя | Microsoft Graph | Состояние и дата окончания действия учетных данных ключа приложения. -и- Учетные данные пароля приложения |
С помощью API MS Graph можно определить дату начала и окончания действия учетных данных, а также выявить те из них, время существования которых превышает разрешенное. См. скрипт PowerShell, который приведен после этой таблицы. |
Доступны следующие стандартные средства мониторинга и оповещения:
Microsoft Sentinel — уведомление о добавлении новых учетных данных приложения или служебного принципа.
Azure Monitor — рабочая книга Microsoft Entra для оценки риска Solorigate — Microsoft Tech Community
Defender для облачных приложений — руководство по исследованию оповещений, генерируемых функцией обнаружения аномалий Defender для облачных приложений.
PowerShell — пример скрипта PowerShell, позволяющего определять срок существования учетных данных.
Разрешения приложения
Как и в случае с учетной записью администратора, приложениям могут назначаться привилегированные роли. Приложениям можно назначать любые из ролей Microsoft Entra, такие как Администратор пользователей, или роли RBAC Azure, такие как Читатель выставления счетов. Так как они могут работать без пользователя и в фоновой службе, внимательно отслеживайте, когда приложению предоставляются привилегированные роли или разрешения.
Назначение субъекта-службы роли
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Приложение, назначенное роли RBAC Azure или роли Microsoft Entra | Высокий до средний уровень | Журналы аудита Microsoft Entra | Тип: субъект-служба Действие: добавление участника в роль или добавление соответствующего участника в роль –или– Добавить участника с ограниченной областью в роль |
Для высоко привилегированных ролей риск высок. Для ролей с низким уровнем привилегий этот риск имеет средний уровень. Оповещение в любое время, когда приложению назначена роль Azure или роль Microsoft Entra за пределами обычных процедур управления изменениями или конфигурации. Шаблон Microsoft Sentinel Sigma-правила |
Приложению предоставлены разрешения с высоким уровнем привилегий
Приложения должны следовать принципу предоставления минимальных прав. Проверьте разрешения приложения и убедитесь, что они нужны для работы. Вы можете создать отчет о предоставлении согласия для приложения, чтобы оценить состояние приложений и выделить разрешения с высоким уровнем привилегий.
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Предоставление приложению разрешений с высоким уровнем привилегий, например разрешений с суффиксом .All (Directory.ReadWrite.All) или разрешений с широким диапазоном действия (Mail.) | Высокая | Журналы аудита Microsoft Entra | "Добавление назначения роли приложения в субъект-службу", - где - Целевые объекты идентифицируют API с конфиденциальными данными (например, Microsoft Graph) -и- AppRole.Value обозначает разрешение приложения с высоким уровнем привилегий (роль приложения). |
Приложениям предоставляются широкие разрешения, такие как .All (Directory.ReadWrite.All) или более широкие разрешения (Mail.) Шаблон Microsoft Sentinel Sigma-правила |
| Предоставление администратором либо разрешений приложения (роли приложения), либо делегированных разрешений с высоким уровнем привилегий | Высокая | Портал Microsoft 365 | "Добавление назначения роли приложения в субъект-службу", - здесь - В качестве целевых объектов определяются API с конфиденциальными данными (например, Microsoft Graph) Добавить делегированное предоставление разрешения - здесь - Целевые объекты идентифицируют API с конфиденциальными данными (например, Microsoft Graph) -и- DelegatedPermissionGrant.Scope включает разрешения с высоким уровнем привилегий. |
Оповещение, когда администратор дает согласие на приложение. Следует обращать особое внимание на предоставление согласия вне рамок обычных действий и процедур управления изменениями. Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Sigma-правила |
| Приложению предоставляются разрешения для Microsoft Graph, Exchange, SharePoint или Microsoft Entra ID. | Высокая | Журналы аудита Microsoft Entra | Добавление делегированной выдачи разрешений –или– "Добавление назначения роли приложения в субъект-службу", - здесь - В качестве целевых объектов определяются API с конфиденциальными данными (например, Microsoft Graph, Exchange Online и т. д.) |
Тревога, как в предыдущей строке. Шаблон Microsoft Sentinel Sigma-правила |
| Разрешения приложений и роли приложений для других API предоставляются | Средняя | Журналы аудита Microsoft Entra | "Добавление назначения роли приложения в субъект-службу", - здесь - В качестве целевых объектов определяются любые другие API. |
Оповещение, как в предшествующей строке. Sigma-правила |
| Предоставление делегированных разрешений с высоким уровнем привилегий от имени всех пользователей | Высокая | Журналы аудита Microsoft Entra | Добавление делегированного предоставления разрешений, где целевые объекты идентифицируют API с конфиденциальными данными (например, Microsoft Graph), DelegatedPermissionGrant.Scope включает разрешения с высоким уровнем привилегий, -и- DelegatedPermissionGrant.ConsentType имеет значение AllPrincipals. |
Оповещения генерируются в соответствии с описанием в предшествующей строке. Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Sigma-правила |
Дополнительные сведения о мониторинге разрешений приложений см. в руководстве Исследование и исправление рискованных приложений OAuth.
Azure Key Vault
В Azure Key Vault могут храниться секреты клиента. Мы рекомендуем обращать внимание на любые изменения в конфигурации и действиях Key Vault.
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Когда и кто осуществляет доступ к вашим хранилищам ключей | Средняя | Журналы Azure Key Vault | Тип ресурса: хранилища ключей | На что следует обращать внимание: любой доступ к Key Vault вне обычных процессов и рабочих часов, любые изменения в ACL Key Vault. Шаблон Microsoft Sentinel Sigma-правила |
После настройки Azure Key Vault включите ведение журнала. Вы сможете отслеживать, как и когда осуществляется доступ к вашим Key Vault, а также настраивать уведомления для Key Vault, которые будут отправляться назначенным пользователям или спискам рассылки через электронную почту, телефон, текстовые сообщения или уведомления Event Grid, если будет затронуто состояние работоспособности. Кроме того, при настройке мониторинга с использованием аналитических сведений Key Vault вы можете получить мгновенный снимок запросов, показателей производительности, отказов и данных о задержке для хранилища ключей. В Log Analytics также представлены примеры запросов для Azure Key Vault. Чтобы получить доступ к ним, выберите нужное хранилище ключей, а затем в разделе "Мониторинг" выберите "Журналы".
Предоставление согласия конечным пользователем
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Предоставление согласия для приложения конечным пользователем | Низкая | Журналы аудита Microsoft Entra | Действие: предоставление согласия приложению / ConsentContext.IsAdminConsent = false | Найдите: высокопрофилированные или высоко привилегированные учетные записи, приложения запрашивают разрешения с высоким риском, приложения с подозрительными именами, например универсальные, неправильно написанные и т. д. Шаблон Microsoft Sentinel Sigma-правила |
Процесс предоставления согласия приложению не является вредоносным. Тем не менее, при поисках подозрительных приложений следует изучить новые случаи предоставления согласия конечными пользователями. Вы можете ограничить операции предоставления согласия конечными пользователями.
Дополнительную информацию об операциях предоставления согласия см. в следующих ресурсах:
Управление согласием для приложений и оценка запросов на согласие в идентификаторе Microsoft Entra
Выявление и устранение незаконного предоставления согласия — Office 365
Прекращение действий конечного пользователя из-за согласия на основе оценки риска.
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Остановка согласия конечного пользователя на основе анализа рисков | Средняя | Журналы аудита Microsoft Entra | Каталог ядра, управление приложениями, предоставление согласия приложению Причина состояния сбоя = Microsoft.online.Security.userConsent Исключения для заблокированных рискованных приложений |
Необходимо отслеживать и анализировать любые случаи отзыва согласия в связи с риском. Найдите: высокопрофилированные или высоко привилегированные учетные записи, приложения запрашивают разрешения с высоким риском или приложения с подозрительными именами, например универсальными, неправильно написанными и т. д. Шаблон Microsoft Sentinel Sigma-правила |
Потоки проверки подлинности приложений
В протоколе OAuth 2.0 есть несколько потоков. Рекомендуемый поток для приложения зависит от типа создаваемого приложения. В некоторых случаях предоставляется выбор потоков, доступных для приложения. В этом случае некоторые потоки проверки подлинности рекомендуются больше других. В частности, избегайте использования учетных данных владельца ресурса с паролем (ROPC), так как в этом случае требуется, чтобы пользователь предоставлял приложению свой текущий пароль. После этого приложение использует эти учетные данные для аутентификации пользователя через поставщика удостоверений. Большинство приложений должны использовать поток кода проверки подлинности (или поток кода проверки подлинности с ключом проверки для обмена кодом (PKCE)), так как этот поток является предпочтительным.
Единственным сценарием, в котором рекомендуется использовать ROPC, является автоматическое тестирование приложений. Дополнительные сведения приведены в разделе Запуск автоматических тестов интеграции.
Поток кода устройства — это еще один поток протокола OAuth 2.0 для устройств с ограничениями ввода, который используется не во всех средах. Когда поток кода устройства появляется в среде, но не используется в сценарии устройства с ограниченными возможностями ввода, необходимо провести дополнительное расследование для выявления неправильно настроенного приложения или потенциально вредоносного кода. Поток кода устройства также может быть заблокирован или разрешен в условном доступе. Дополнительные сведения см. в потоках проверки подлинности для условного доступа
Отслеживайте проверку подлинности приложения с использованием следующего метода.
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Приложения, использующие поток проверки подлинности ROPC | Средняя | Журнал входа Microsoft Entra | Состояние = "успешно" Протокол проверки подлинности — ROPC |
Это приложение характеризуется высоким уровнем доверия, поскольку учетные данные можно кэшировать или хранить. Если возможно, перейдите на более защищенный поток проверки подлинности. Этот вариант допускается только при автоматизированном тестировании приложений, но лучше не использовать его вообще. Дополнительные сведения приведены в статье Платформа удостоверений Майкрософт и учетные данные владельца ресурса OAuth 2.0 Sigma-правила |
| Приложения, использующие поток кода устройства | От низкого до среднего | Журнал входа Microsoft Entra | Состояние = "успешно" Протокол проверки подлинности — код устройства |
Потоки кода устройства используются для устройств с ограничениями ввода, которые могут присутствовать не во всех средах. Если успешные потоки кода устройства появляются без необходимости, проверьте их на их действительность. Дополнительные сведения приведены в статье Платформа удостоверений Майкрософт и поток предоставления авторизации устройства OAuth 2.0 Sigma-правила |
Изменения конфигурации приложения
Отслеживайте изменения в конфигурации приложения. В частности, необходимо обращать внимание на изменения универсального кода ресурса (URI), владельца и URL-адреса выхода.
Висячие URI и изменения URI перенаправления
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Неработающий URI | Высокая | Журналы Microsoft Entra и регистрация приложений | Каталог ядра службы, категория — управление приложением Действие: обновление приложения Успешно — Название свойства: AppAddress |
Обращайте внимание на "висячие" URI, например те, которые указывают на несуществующее или не принадлежащее вам явно доменное имя. Шаблон Microsoft Sentinel Sigma-правила |
| Изменения в конфигурации перенаправления URI | Высокая | Журналы Microsoft Entra | Каталог ядра службы, категория — управление приложением Действие: обновление приложения Успешно — Название свойства: AppAddress |
Обращайте внимание на URI, в которых не используется формат HTTPS*, а также на URI с подстановочными знаками в конце домена URL-адреса, URI, НЕ ЯВЛЯЮЩИЕСЯ уникальными для приложения, и URI, которые указывают на домен, не находящийся под вашим управлением. Шаблон Microsoft Sentinel Sigma-правила |
Оповещение генерируется, когда обнаруживаются эти изменения.
Добавление, изменение или удаление URI AppID
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Изменения в URI AppID | Высокая | Журналы Microsoft Entra | Каталог ядра службы, категория — управление приложением Действие: обновление Приложение Действие: Обновление принципала обслуживания |
Обращайте внимание на любые изменения URI AppID, в том числе на добавление, изменение или удаление URI. Шаблон Microsoft Sentinel Sigma-правила |
Оповещение генерируется, когда эти изменения обнаруживаются вне рамок утвержденных процедур управления изменениями.
Новый владелец
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Изменения владения приложением | Средняя | Журналы Microsoft Entra | Каталог ядра службы, категория — управление приложением Действие: добавление владельца приложения |
Ищите случаи, когда пользователь добавляется в качестве владельца приложения вне обычных процедур управления изменениями. Шаблон Microsoft Sentinel Sigma-правила |
Изменение или удаление URL-адреса выхода
| Что отслеживать | Уровень риска | Где | Фильтр и подфильтр | Примечания. |
|---|---|---|---|---|
| Изменения в URL-адресе выхода | Низкая | Журналы Microsoft Entra | Каталог ядра службы, категория — управление приложением Действие: обновление приложения -и- Действие: обновление учетной записи службы |
Обращайте внимание на любые изменения в URL-адресе выхода. Пустые записи или записи в несуществующие местоположения не позволят пользователю завершить сеанс. Шаблон Microsoft Sentinel Sigma-правила |
Ресурсы
Набор средств Microsoft Entra для GitHub — https://github.com/microsoft/AzureADToolkit
Общие сведения о безопасности и руководство по безопасности для Azure Key Vault — общие сведения о безопасности Azure Key Vault
Сведения об информации и средствах, связанных с Solorigate — рабочая книга Microsoft Entra для оценки риска Solorigate
Руководство по обнаружению атак OAuth — нетипичное добавление учетных данных для приложения OAuth
Сведения о конфигурации мониторинга Microsoft Entra для СИЭМ: инструменты партнеров с интеграцией Azure Monitor
Следующие шаги
Обзор операций безопасности Microsoft Entra
Операции безопасности для учетных записей пользователей
Операции безопасности для учетных записей потребителей
Операции безопасности для привилегированных учетных записей
Операции безопасности для управления привилегированными идентичностями