Руководство по операциям безопасности Microsoft Entra для приложений
Приложения имеют область атаки для нарушений безопасности и должны отслеживаться. Хотя они не предназначены так часто, как учетные записи пользователей, могут возникать нарушения. Так как приложения часто выполняются без вмешательства человека, атаки могут быть сложнее обнаружить.
В этой статье приводятся рекомендации по мониторингу и оповещению о событиях приложения. Это регулярно обновляется, чтобы помочь вам:
Запрет вредоносных приложений получить неоправданный доступ к данным
Предотвращение компрометации приложений плохими субъектами
Сбор аналитических сведений, позволяющих создавать и настраивать новые приложения более безопасно
Если вы не знакомы с тем, как приложения работают в идентификаторе Microsoft Entra, см. статью "Приложения и субъекты-службы" в идентификаторе Microsoft Entra.
Заметка
Если вы еще не ознакомились с обзором операций безопасности Microsoft Entra, попробуйте сделать это сейчас.
Что искать
При мониторинге журналов приложений для инцидентов безопасности просмотрите следующий список, чтобы помочь отличить нормальное действие от вредоносных действий. Следующие события могут указывать на проблемы безопасности. Каждый из них рассматривается в статье.
Любые изменения, происходящие вне обычных бизнес-процессов и расписаний
Изменения учетных данных приложения
Разрешения приложения
Субъект-служба, назначенный идентификатору Microsoft Entra или роли управления доступом на основе ролей Azure (RBAC)
Приложения, которым предоставлены разрешения с высоким уровнем привилегий
Изменения Azure Key Vault
Предоставление приложениям согласия конечным пользователем
Остановленное согласие конечных пользователей на основе уровня риска
Изменения конфигурации приложения
Универсальный идентификатор ресурса (URI) изменен или не является стандартным
Изменения владельцев приложений
Изменены URL-адреса выхода
Где искать
Файлы журнала, используемые для исследования и мониторинга, являются следующими:
В портал Azure можно просмотреть журналы аудита Microsoft Entra и скачать их как файлы json с разделительными запятыми (CSV) или Нотация объектов JavaScript (JSON). В портал Azure есть несколько способов интеграции журналов Microsoft Entra с другими средствами, которые позволяют обеспечить большую автоматизацию мониторинга и оповещений:
Microsoft Sentinel — обеспечивает интеллектуальную аналитику безопасности на корпоративном уровне с возможностями управления безопасностью и событиями (SIEM).
Правила Sigma — Sigma — это развивающийся стандарт для написания правил и шаблонов, которые автоматизированные средства управления могут использовать для анализа файлов журналов. Где существуют шаблоны Sigma для рекомендуемых условий поиска, мы добавили ссылку на репозиторий Sigma. Шаблоны Sigma не записываются, тестируются и управляются корпорацией Майкрософт. Скорее, репозиторий и шаблоны создаются и собираются мировым сообществом ИТ-безопасности.
Azure Monitor — автоматизированное мониторинг и оповещение различных условий. Может создавать или использовать книги для объединения данных из разных источников.
Центры событий Azure интеграции с журналами Microsoft Entra SIEM- можно интегрировать с другими SIEMs, такими как Splunk, ArcSight, QRadar и Sumo Logic с помощью интеграции Центры событий Azure.
приложения Microsoft Defender для облака — обнаружение приложений и управление ими, управление ими между приложениями и ресурсами, а также проверка соответствия облачных приложений.
Защита удостоверений рабочей нагрузки с помощью Защита идентификации Microsoft Entra — обнаруживает риск для удостоверений рабочей нагрузки в поведении входа и автономных индикаторах компрометации.
Большая часть того, что вы отслеживаете и оповещаете, являются последствиями политик условного доступа. Вы можете использовать аналитические сведения об условном доступе и книгу отчетов для изучения последствий одной или нескольких политик условного доступа для входа, а также результатов политик, включая состояние устройства. Используйте книгу для просмотра сводки и определения эффектов за период времени. Книгу можно использовать для изучения входов определенного пользователя.
Оставшаяся часть этой статьи — это то, что мы рекомендуем отслеживать и оповещать. Он организован по типу угрозы. Где есть готовые решения, мы свяжите их или укажите примеры после таблицы. В противном случае можно создавать оповещения с помощью предыдущих средств.
Учетные данные приложения
Многие приложения используют учетные данные для проверки подлинности в идентификаторе Microsoft Entra. Любые другие учетные данные, добавленные вне ожидаемых процессов, могут быть вредоносными субъектами с помощью этих учетных данных. Вместо использования секретов клиента рекомендуется использовать сертификаты X509, выданные доверенными центрами или управляемыми удостоверениями. Однако если вам нужно использовать секреты клиента, следуйте рекомендациям по гигиене, чтобы обеспечить безопасность приложений. Обратите внимание, что обновления приложения и субъекта-службы регистрируются как две записи в журнале аудита.
Отслеживайте приложения для определения длительного срока действия учетных данных.
Замените долгоживущие учетные данные коротким сроком жизни. Убедитесь, что учетные данные не фиксируются в репозиториях кода и хранятся безопасно.
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Добавлены учетные данные для существующих приложений | Высокий | Журналы аудита Microsoft Entra | Каталог Service-Core, Category-ApplicationManagement Действие. Обновление сертификатов приложений и управления секретами -и- Действие. Обновление субъекта-службы или приложения update |
Оповещение, если учетные данные: добавлены вне обычных рабочих часов или рабочих процессов, типов, которые не используются в вашей среде, или добавляются в поток, отличный от 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) -и- ДелегированныйPermissionGrant.Scope включает разрешения с высоким уровнем привилегий. |
Оповещение, когда администратор дает согласие на приложение. Особенно ищите согласие за пределами нормальной деятельности и процедур изменения. Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Правила Sigma |
Приложение предоставляет разрешения для Идентификатора Microsoft Graph, Exchange, SharePoint или Microsoft Entra. | Высокий | Журналы аудита Microsoft Entra | Добавление делегированного предоставления разрешений -или- "Добавление назначения роли приложения в субъект-службу", -где- Целевые объекты идентифицируют API с конфиденциальными данными (например, Microsoft Graph, Exchange Online и т. д.) |
Оповещение, как показано в предыдущей строке. Шаблон Microsoft Sentinel Правила Sigma |
Разрешения приложения (роли приложения) для других API предоставляются | Терпимая | Журналы аудита Microsoft Entra | "Добавление назначения роли приложения в субъект-службу", -где- Целевые объекты идентифицируют любой другой API. |
Оповещение, как показано в предыдущей строке. Правила Sigma |
Делегированные разрешения с высоким уровнем привилегий предоставляются от имени всех пользователей. | Высокий | Журналы аудита Microsoft Entra | Добавление делегированного предоставления разрешений, где целевые объекты идентифицируют API с конфиденциальными данными (например, Microsoft Graph), DelegatedPermissionGrant.Scope включает разрешения с высоким уровнем привилегий, -и- ДелегированныйPermissionGrant.ConsentType — AllPrincipals. |
Оповещение, как показано в предыдущей строке. Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Шаблон Microsoft Sentinel Правила Sigma |
Дополнительные сведения о разрешениях для мониторинга приложений см. в этом руководстве. Изучение и устранение рискованных приложений OAuth.
Azure Key Vault
Используйте Azure Key Vault для хранения секретов клиента. Мы рекомендуем обратить внимание на любые изменения в конфигурации и действиях Key Vault.
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Как и когда к хранилищам ключей обращаются и кем | Терпимая | Журналы Azure Key Vault | Тип ресурса: Key Vaults | Найдите: любой доступ к Key Vault за пределами регулярных процессов и часов, любые изменения в ACL Key Vault. Шаблон Microsoft Sentinel Правила Sigma |
После настройки Azure Key Vault включите ведение журнала. Узнайте , как и когда доступ к Хранилищам ключей осуществляется, а также настроить оповещения в Key Vault, чтобы уведомить назначенных пользователей или списков рассылки по электронной почте, телефону, тексту или уведомления сетки событий, если это влияет на работоспособность. Кроме того, настройка мониторинга с помощью аналитики Key Vault предоставляет моментальный снимок запросов Key Vault, производительности, сбоев и задержки. Log Analytics также содержит несколько примеров запросов к Azure Key Vault, к которым можно получить доступ после выбора Key Vault, а затем в разделе "Мониторинг" выберите "Журналы".
Согласие конечных пользователей
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Согласие конечных пользователей на приложение | Низкий | Журналы аудита Microsoft Entra | Действие: согласие на приложение / ConsentContext.IsAdminConsent = false | Найдите: высокопрофилированные или высоко привилегированные учетные записи, приложения запрашивают разрешения с высоким риском, приложения с подозрительными именами, например универсальные, неправильно написанные и т. д. Шаблон Microsoft Sentinel Правила Sigma |
Акт согласия приложения не является вредоносным. Тем не менее, изучите новые разрешения конечных пользователей, которые ищут подозрительные приложения. Вы можете ограничить операции согласия пользователей.
Дополнительные сведения об операциях согласия см. в следующих ресурсах:
Управление согласием для приложений и оценка запросов на согласие в идентификаторе Microsoft Entra
Обнаружение и исправление незаконных грантов согласия — Office 365
Сборник схем реагирования на инциденты — исследование предоставления согласия приложения
Конечный пользователь остановлен из-за согласия на основе рисков
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Согласие конечных пользователей остановлено из-за согласия на основе рисков | Терпимая | Журналы аудита Microsoft Entra | Core Directory / ApplicationManagement / Consent to application Причина состояния сбоя = Microsoft.online.Security.userConsent BlockedForRiskyAppsExceptions |
Отслеживайте и анализируйте любое время прекращения согласия из-за риска. Найдите: высокопрофилированные или высоко привилегированные учетные записи, приложения запрашивают разрешения с высоким риском или приложения с подозрительными именами, например универсальными, неправильно написанными и т. д. Шаблон Microsoft Sentinel Правила Sigma |
Потоки проверки подлинности приложений
Существует несколько потоков в протоколе OAuth 2.0. Рекомендуемый поток для приложения зависит от типа создаваемого приложения. В некоторых случаях существует выбор потоков, доступных приложению. В этом случае некоторые потоки проверки подлинности рекомендуется использовать для других пользователей. В частности, избегайте учетных данных пароля владельца ресурса (ROPC), так как они требуют от пользователя предоставления текущих учетных данных пароля приложению. Затем приложение использует учетные данные для проверки подлинности пользователя в поставщике удостоверений. Большинство приложений должны использовать поток кода проверки подлинности или поток кода проверки подлинности с ключом проверки подлинности для Exchange кода (PKCE), так как этот поток рекомендуется.
Единственный сценарий, в котором предлагается ROPC, предназначен для автоматического тестирования приложений. Дополнительные сведения см. в разделе "Запуск автоматизированных тестов интеграции".
Поток кода устройства — это другой поток протокола OAuth 2.0 для устройств с ограниченными входными данными и не используется во всех средах. Когда поток кода устройства отображается в среде и не используется в сценарии ввода ограниченного устройства. Дополнительные исследования оправданы для неправильно настроенного приложения или потенциально вредоносного. Поток кода устройства также может быть заблокирован или разрешен в условном доступе. Дополнительные сведения см. в потоках проверки подлинности условного доступа.
Мониторинг проверки подлинности приложения с помощью следующего формирования:
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Приложения, использующие поток проверки подлинности ROPC | Терпимая | Журнал входа Microsoft Entra | Status=Success Протокол проверки подлинности—ROPC |
Высокий уровень доверия помещается в это приложение, так как учетные данные можно кэшировать или хранить. Переместите, если это возможно, в более безопасный поток проверки подлинности. Это следует использовать только в автоматическом тестировании приложений, если это вообще. Дополнительные сведения см. в разделе платформа удостоверений Майкрософт и учетные данные владельца ресурса OAuth 2.0 Правила Sigma |
Приложения с помощью потока кода устройства | Низкий и средний | Журнал входа Microsoft Entra | Status=Success Код протокола проверки подлинности |
Потоки кода устройства используются для устройств с ограниченными входами, которые могут не находиться во всех средах. Если потоки кода устройства успешно отображаются, не требуя их, изучите сведения о действительности. Дополнительные сведения см. в платформа удостоверений Майкрософт и потоке предоставления авторизации устройств OAuth 2.0. Правила Sigma |
Изменения конфигурации приложения
Отслеживайте изменения конфигурации приложения. В частности, изменение конфигурации на универсальный идентификатор ресурса (URI), владение и URL-адрес выхода.
Изменение URI и URI перенаправления
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Dangling URI | Высокий | Журналы Microsoft Entra и регистрация приложений | Каталог Service-Core, Category-ApplicationManagement Действие. Обновление приложения Success — имя свойства AppAddress |
Например, найдите URI, указывающие на доменное имя, которое больше не существует, или то, что вы явно не владеете. Шаблон Microsoft Sentinel Правила Sigma |
Изменения конфигурации URI перенаправления | Высокий | Журналы Microsoft Entra | Каталог Service-Core, Category-ApplicationManagement Действие. Обновление приложения Success — имя свойства AppAddress |
Найдите URI, не использующие HTTPS*, URI с подстановочными знаками в конце или домене URL-адреса, URI, которые не являются уникальными для приложения, URI, указывающие на домен, который не контролируется. Шаблон Microsoft Sentinel Правила Sigma |
Оповещение при обнаружении этих изменений.
URI AppID добавлен, изменен или удален
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Изменения в URI AppID | Высокий | Журналы Microsoft Entra | Каталог Service-Core, Category-ApplicationManagement Действие: обновление Приложение Действие. Обновление субъекта-службы |
Найдите любые изменения URI AppID, такие как добавление, изменение или удаление URI. Шаблон Microsoft Sentinel Правила Sigma |
Оповещение об обнаружении этих изменений вне утвержденных процедур управления изменениями.
Новый владелец
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Изменения владения приложениями | Терпимая | Журналы Microsoft Entra | Каталог Service-Core, Category-ApplicationManagement Действие. Добавление владельца в приложение |
Найдите любой экземпляр пользователя, добавляемого в качестве владельца приложения за пределами обычных действий по управлению изменениями. Шаблон Microsoft Sentinel Правила Sigma |
URL-адрес выхода изменен или удален
Что отслеживать | Уровень риска | Где | Фильтрация и вложенный фильтр | Примечания |
---|---|---|---|---|
Изменения URL-адреса выхода | Низкий | Журналы Microsoft Entra | Каталог Service-Core, Category-ApplicationManagement Действие. Обновление приложения -и- Действие. Обновление принципа службы |
Найдите любые изменения в 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 для SIEMs — средства партнеров с интеграцией Azure Monitor
Дальнейшие действия
Обзор операций безопасности Microsoft Entra
Операции безопасности для учетных записей пользователей
Операции безопасности для учетных записей потребителей
Операции безопасности для привилегированных учетных записей
Операции безопасности для управление привилегированными пользователями