Az - Моніторинг
Reading time: 7 minutes
tip
Вивчайте та практикуйте AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
Entra ID - Logs
Є 3 типи журналів, доступних в Entra ID:
- Sign-in Logs: Sign-in logs документують кожну спробу автентифікації, успішну чи невдалу. Вони надають деталі, такі як IP-адреси, місцезнаходження, інформацію про пристрій та applied conditional access policies, що є важливими для моніторингу активності користувачів і виявлення підозрілих спроб входу або потенційних загроз безпеки.
- Audit Logs: Audit logs забезпечують запис усіх змін, зроблених у вашому середовищі Entra ID. Вони фіксують оновлення користувачів, груп, ролей або політик, наприклад. Ці журнали критично важливі для відповідності та розслідувань безпеки, оскільки дозволяють переглянути, хто що змінив і коли.
- Provisioning Logs: Provisioning logs надають інформацію про користувачів, створених у вашому tenant через сторонні служби (наприклад, on-premises directories або SaaS applications). Ці журнали допомагають зрозуміти, як синхронізується інформація ідентичності.
warning
Зверніть увагу, що ці журнали зберігаються лише протягом 7 днів у безкоштовній версії, 30 днів у версіях P1/P2 і додатково 60 днів у security signals для ризикових спроб входу. Однак навіть глобальний адміністратор не зможе змінити або видалити їх раніше.
Entra ID - Log Systems
- Diagnostic Settings: Diagnostic Settings визначає список категорій platform logs та/або метрик, які ви хочете збирати з ресурсу, і одну або декілька цілей, куди ви будете їх транслювати. Застосовуватимуться звичайні тарифи за використання для обраної цілі. Дізнайтеся більше про різні категорії журналів та вміст цих журналів.
- Destinations:
- Analytics Workspace: Investigation через Azure Log Analytics та створення alerts.
- Storage account: Статичний аналіз і резервне копіювання.
- Event hub: Stream data до зовнішніх систем, таких як сторонні SIEM.
- Monitor partner solutions: Спеціальні інтеграції між Azure Monitor та іншими не‑Microsoft платформами моніторингу.
- Workbooks: Workbooks комбінують текст, log queries, метрики та параметри в багаті інтерактивні звіти.
- Usage & Insights: Корисно для перегляду найпоширеніших дій в Entra ID
Azure Monitor
Ось основні функції Azure Monitor:
- Activity Logs: Azure Activity Logs фіксують події на рівні підписки та операції управління, даючи огляд змін та дій, виконаних над вашими ресурсами.
- Activity logs: їх не можна змінити або видалити.
- Change Analysis: Change Analysis автоматично виявляє та візуалізує зміни конфігурації й стану ваших ресурсів Azure, допомагаючи діагностувати проблеми та відстежувати модифікації з часом.
- Alerts: Alerts від Azure Monitor — це автоматизовані сповіщення, які запускаються, коли в вашому середовищі Azure досягаються вказані умови або пороги.
- Workbooks: Workbooks — інтерактивні, настроювані панелі в Azure Monitor, які дозволяють комбінувати та візуалізувати дані з різних джерел для всебічного аналізу.
- Investigator: Investigator допомагає заглибитися в log data і alerts для проведення глибинного аналізу та ідентифікації причин інцидентів.
- Insights: Insights надають аналітику, метрики продуктивності та практичні рекомендації (наприклад, у Application Insights або VM Insights), щоб допомогти вам контролювати та оптимізувати стан і ефективність ваших застосунків і інфраструктури.
Log Analytics Workspaces
Log Analytics workspaces — це центральні репозиторії в Azure Monitor, де ви можете збирати, аналізувати та візуалізувати журнали й дані про продуктивність ваших ресурсів Azure та on‑premises середовищ. Ключові моменти:
- Centralized Data Storage: Вони служать центральним місцем для зберігання diagnostic logs, метрик продуктивності та custom logs, створених вашими застосунками та сервісами.
- Powerful Query Capabilities: Ви можете виконувати запити за допомогою Kusto Query Language (KQL) для аналізу даних, отримання інсайтів та вирішення проблем.
- Integration with Monitoring Tools: Log Analytics workspaces інтегруються з різними сервісами Azure (такими як Azure Monitor, Azure Sentinel і Application Insights), що дозволяє створювати панелі, налаштовувати alerts і отримувати всебічний огляд вашого середовища.
У підсумку, Log Analytics workspace є необхідним для просунутого моніторингу, усунення несправностей і аналізу безпеки в Azure.
Ви можете налаштувати ресурс для відправки даних до analytics workspace з diagnostic settings ресурсу.
Graph vs ARM logging visibility (useful for OPSEC/hunting)
- Microsoft Graph Activity Logs за замовчуванням не увімкнені. Увімкніть їх і експортуйте (Event Hubs/Log Analytics/SIEM), щоб бачити Graph read calls. Такі інструменти як AzureHound виконують preflight GET до /v1.0/organization — це з’явиться тут; спостережуваний default UA: azurehound/v2.x.x.
- Entra ID non-interactive sign-in logs фіксують аутентифікацію identity platform (login.microsoftonline.
), яку використовують скрипти/інструменти. - ARM control-plane read/list (HTTP GET) операції загалом не записуються в Activity Logs. Видимість read-операцій забезпечується Diagnostic Settings ресурсу тільки для data‑plane endpoints (наприклад, *.blob.core.windows.net, *.vault.azure.net) і не з ARM control‑plane викликів до management.azure.
. - Microsoft Defender XDR Advanced Hunting GraphApiAuditEvents (preview) може розкривати Graph виклики та ідентифікатори токенів, але може опускати UserAgent і має обмежений стандартний період збереження.
Коли ви полюєте на AzureHound, корелюйте Entra sign-in logs з Graph Activity Logs по session ID, IP, user/object IDs та шукайте сплески Graph запитів разом із ARM management викликами, які не мають покриття в Activity Logs.
Enumeration
Entra ID
# Get last 10 sign-ins
az rest --method get --uri 'https://graph.microsoft.com/v1.0/auditLogs/signIns?$top=10'
# Get last 10 audit logs
az rest --method get --uri 'https://graph.microsoft.com/v1.0/auditLogs/directoryAudits?$top=10'
# Get last 10 provisioning logs
az rest --method get --uri ‘https://graph.microsoft.com/v1.0/auditLogs/provisioning?$top=10’
# Get EntraID Diagnostic Settings
az rest --method get --uri "https://management.azure.com/providers/microsoft.aadiam/diagnosticSettings?api-version=2017-04-01-preview"
# Get Entra ID Workbooks
az rest \
--method POST \
--url "https://management.azure.com/providers/microsoft.resourcegraph/resources?api-version=2021-03-01" \
--headers '{"commandName": "AppInsightsExtension.GetWorkbooksListArg"}' \
--body '{
"subscriptions": ["9291ff6e-6afb-430e-82a4-6f04b2d05c7f"],
"query": "where type =~ \"microsoft.insights/workbooks\" \n| extend sourceId = tostring(properties.sourceId) \n| where sourceId =~ \"Azure Active Directory\" \n| extend DisplayName = tostring(properties.displayName) \n| extend WorkbookType = tostring(properties.category), LastUpdate = todatetime(properties.timeModified) \n| where WorkbookType == \"workbook\"\n| project DisplayName, name, resourceGroup, kind, location, id, type, subscriptionId, tags, WorkbookType, LastUpdate, identity, properties",
"options": {"resultFormat": "table"},
"name": "e4774363-5160-4c09-9d71-2da6c8e3b00a"
}' | jq '.data.rows'
Azure Monitor
# Get last 10 activity logs
az monitor activity-log list --max-events 10
# Get Resource Diagnostic Settings
az rest --url "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<res-group>/providers/Microsoft.DocumentDb/databaseAccounts/<db-name>/providers/microsoft.insights/diagnosticSettings?api-version=2021-05-01-preview"
# Get Entra ID Workbooks
az rest \
--method POST \
--url "https://management.azure.com/providers/microsoft.resourcegraph/resources?api-version=2021-03-01" \
--headers '{"commandName": "AppInsightsExtension.GetWorkbooksListArg"}' \
--body '{
"content": {},
"commandName": "AppInsightsExtension.GetWorkbooksListArg"
}'
# List Log Analytic groups
az monitor log-analytics workspace list --output table
# List alerts
az monitor metrics alert list --output table
az monitor activity-log alert list --output table
Джерела
tip
Вивчайте та практикуйте AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
HackTricks Cloud