Az - Monitoring
Reading time: 7 minutes
tip
Impara e pratica il hacking AWS: HackTricks Training AWS Red Team Expert (ARTE)
HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP:  HackTricks Training GCP Red Team Expert (GRTE)
HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure:
Impara e pratica il hacking Azure:  HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
Entra ID - Logs
There are 3 types of logs available in Entra ID:
- Sign-in Logs: I Sign-in Logs documentano ogni tentativo di autenticazione, riuscito o fallito. Forniscono dettagli come indirizzi IP, posizioni, informazioni sul dispositivo e le policy di conditional access applicate, essenziali per monitorare l'attività degli utenti e rilevare comportamenti di login sospetti o potenziali minacce alla sicurezza.
- Audit Logs: Gli Audit Logs forniscono una cronologia di tutte le modifiche effettuate nell'ambiente Entra ID. Registrano aggiornamenti relativi a utenti, gruppi, ruoli o policy, per esempio. Questi log sono vitali per compliance e investigazioni sulla sicurezza, poiché permettono di rivedere chi ha effettuato quale modifica e quando.
- Provisioning Logs: I Provisioning Logs contengono informazioni sugli utenti provisionati nel tenant tramite un servizio di terze parti (come directory on-premises o applicazioni SaaS). Questi log aiutano a comprendere come le informazioni di identità vengono sincronizzate.
warning
Nota che questi log sono conservati solo per 7 days nella versione gratuita, 30 days nelle versioni P1/P2 e 60 giorni aggiuntivi in security signals per attività di risky signin. Tuttavia, neanche un global admin potrebbe modificarli o cancellarli prima.
Entra ID - Log Systems
- Diagnostic Settings: Un diagnostic setting specifica una lista di categorie di platform logs e/o metriche che vuoi raccogliere da una risorsa, e una o più destinazioni dove vuoi streammarli. Si applicheranno i normali costi d'uso per la destinazione. Scopri di più sulle diverse categorie di log e sul contenuto di quei log.
- Destinations:
- Analytics Workspace: Investigazione tramite Azure Log Analytics e creazione di alerts.
- Storage account: Analisi statica e backup.
- Event hub: Stream dei dati verso sistemi esterni come SIEM di terze parti.
- Monitor partner solutions: Integrazioni speciali tra Azure Monitor e altre piattaforme di monitoring non-Microsoft.
- Workbooks: I Workbooks combinano testo, query di log, metriche e parametri in report interattivi e ricchi.
- Usage & Insights: Utile per vedere le attività più comuni in Entra ID
Azure Monitor
These are the main features of Azure Monitor:
- Activity Logs: Azure Activity Logs catturano eventi a livello di subscription e operazioni di management, offrendo una panoramica delle modifiche e delle azioni eseguite sulle tue risorse.
- Activity logs non possono essere modificati o cancellati.
- Change Analysis: Change Analysis rileva e visualizza automaticamente cambiamenti di configurazione e di stato attraverso le risorse Azure per aiutare a diagnosticare problemi e tracciare le modifiche nel tempo.
- Alerts: Gli Alerts di Azure Monitor sono notifiche automatiche generate quando condizioni o soglie specificate vengono soddisfatte nell'ambiente Azure.
- Workbooks: I Workbooks sono dashboard interattivi e personalizzabili all'interno di Azure Monitor che consentono di combinare e visualizzare dati provenienti da varie fonti per un'analisi completa.
- Investigator: Investigator aiuta a scavare nei dati di log e negli alerts per condurre analisi approfondite e identificare la causa degli incidenti.
- Insights: Insights forniscono analytics, metriche di performance e raccomandazioni azionabili (come quelle in Application Insights o VM Insights) per aiutare a monitorare e ottimizzare la salute e l'efficienza delle tue applicazioni e infrastrutture.
Log Analytics Workspaces
Log Analytics workspaces are central repositories in Azure Monitor where you can collect, analyze, and visualize log and performance data from your Azure resources and on-premises environments. Here are the key points:
- Centralized Data Storage: Servono come posizione centrale per conservare diagnostic logs, metriche di performance e custom logs generati dalle tue applicazioni e servizi.
- Powerful Query Capabilities: Puoi eseguire query usando Kusto Query Language (KQL) per analizzare i dati, generare insight e risolvere problemi.
- Integration with Monitoring Tools: I Log Analytics workspaces si integrano con vari servizi Azure (come Azure Monitor, Azure Sentinel e Application Insights) permettendoti di creare dashboard, impostare alerts e ottenere una vista completa del tuo ambiente.
In sintesi, un Log Analytics workspace è essenziale per monitoring avanzato, troubleshooting e analisi di sicurezza in Azure.
Puoi configurare una risorsa per inviare i dati a un analytics workspace dalle diagnostic settings della risorsa.
Graph vs ARM logging visibility (useful for OPSEC/hunting)
- Microsoft Graph Activity Logs are not enabled by default. Enable and export them (Event Hubs/Log Analytics/SIEM) to see Graph read calls. Tools like AzureHound perform a preflight GET to /v1.0/organization that will appear here; default UA observed: azurehound/v2.x.x.
- Entra ID non-interactive sign-in logs registrano la identity platform authentication (login.microsoftonline.) usata da script/strumenti. 
- Le operazioni ARM control-plane di read/list (HTTP GET) generalmente non vengono scritte negli Activity Logs. La visibilità delle operazioni di read proviene dalle Diagnostic Settings della risorsa per endpoint data-plane solamente (es., *.blob.core.windows.net, *.vault.azure.net) e non dalle chiamate ARM control-plane a management.azure.. 
- Microsoft Defender XDR Advanced Hunting GraphApiAuditEvents (preview) può esporre chiamate Graph e identificatori di token ma può omettere UserAgent e ha una retention di default limitata.
Quando fai hunting per AzureHound, correlare gli Entra sign-in logs con i Graph Activity Logs tramite session ID, IP, user/object IDs, e cercare picchi di richieste Graph insieme a chiamate di management ARM che non hanno copertura negli Activity Log.
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
Riferimenti
tip
Impara e pratica il hacking AWS: HackTricks Training AWS Red Team Expert (ARTE)
HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP:  HackTricks Training GCP Red Team Expert (GRTE)
HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure:
Impara e pratica il hacking Azure:  HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
 HackTricks Cloud
HackTricks Cloud