Az - Monitoring

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Entra ID - Logs

Υπάρχουν 3 τύποι logs διαθέσιμοι στο Entra ID:

  • Sign-in Logs: Τα Sign-in logs τεκμηριώνουν κάθε προσπάθεια authentication, είτε επιτυχής είτε αποτυχημένη. Παρέχουν λεπτομέρειες όπως διευθύνσεις IP, τοποθεσίες, πληροφορίες συσκευής και εφαρμοσμένες conditional access policies, που είναι απαραίτητες για την παρακολούθηση της δραστηριότητας χρηστών και την ανίχνευση ύποπτης συμπεριφοράς σύνδεσης ή πιθανών απειλών ασφαλείας.
  • Audit Logs: Τα Audit logs παρέχουν ένα ιστορικό όλων των αλλαγών που έγιναν στο περιβάλλον Entra ID σας. Καταγράφουν ενημερώσεις σε users, groups, roles ή policies για παράδειγμα. Αυτά τα logs είναι ζωτικά για τη συμμόρφωση και τις έρευνες ασφαλείας, καθώς σας επιτρέπουν να ελέγξετε ποιος έκανε ποια αλλαγή και πότε.
  • Provisioning Logs: Τα Provisioning logs παρέχουν πληροφορίες σχετικά με χρήστες που provisioned στο tenant σας μέσω υπηρεσίας τρίτου μέρους (όπως on‑premises directories ή SaaS εφαρμογές). Αυτά τα logs βοηθούν να κατανοήσετε πώς συγχρονίζεται το identity information.

Warning

Σημειώστε ότι αυτά τα logs αποθηκεύονται μόνο για 7 days στην free έκδοση, 30 days στην P1/P2 έκδοση και 60 επιπλέον days στα security signals για risky signin activity. Ωστόσο, ούτε ένας global admin δεν θα μπορούσε να τα τροποποιήσει ή διαγράψει νωρίτερα.

Entra ID - Log Systems

  • Diagnostic Settings: Μια diagnostic setting προσδιορίζει μια λίστα κατηγοριών πλατφορμικών logs και/ή metrics που θέλετε να συλλέγετε από έναν resource, και έναν ή περισσότερους προορισμούς στους οποίους θα τα streamάρετε. Θα εφαρμοστούν κανονικά usage charges για τον προορισμό. Μάθετε περισσότερα σχετικά με τις διαφορετικές log categories και το περιεχόμενο αυτών των logs.
  • Destinations:
  • Analytics Workspace: Investigation μέσω Azure Log Analytics και δημιουργία alerts.
  • Storage account: Στατική ανάλυση και backup.
  • Event hub: Stream δεδομένων σε εξωτερικά συστήματα όπως third‑party SIEMs.
  • Monitor partner solutions: Ειδικές ενσωματώσεις μεταξύ Azure Monitor και άλλων non‑Microsoft monitoring πλατφορμών.
  • Workbooks: Τα Workbooks συνδυάζουν text, log queries, metrics, και parameters σε πλούσιες interactive αναφορές.
  • Usage & Insights: Χρήσιμο για να δείτε τις πιο κοινές δραστηριότητες στο Entra ID

Azure Monitor

Αυτά είναι τα κύρια χαρακτηριστικά του Azure Monitor:

  • Activity Logs: Τα Azure Activity Logs καταγράφουν subscription‑level events και management operations, δίνοντάς σας μια επισκόπηση των αλλαγών και των ενεργειών που έγιναν στους resources σας.
  • Activity logs δεν μπορούν να τροποποιηθούν ή να διαγραφούν.
  • Change Analysis: Το Change Analysis εντοπίζει και οπτικοποιεί αυτόματα configuration και state changes σε όλο το Azure περιβάλλον σας για να βοηθήσει στη διάγνωση προβλημάτων και στην παρακολούθηση τροποποιήσεων με την πάροδο του χρόνου.
  • Alerts: Τα Alerts από το Azure Monitor είναι αυτοματοποιημένες ειδοποιήσεις που ενεργοποιούνται όταν πληρούνται συγκεκριμένες συνθήκες ή thresholds στο Azure περιβάλλον σας.
  • Workbooks: Τα Workbooks είναι interactive, customizable dashboards μέσα στο Azure Monitor που σας επιτρέπουν να συνδυάσετε και να οπτικοποιήσετε δεδομένα από διάφορες πηγές για ολοκληρωμένη ανάλυση.
  • Investigator: Το Investigator βοηθά να εμβαθύνετε σε log data και alerts για να πραγματοποιήσετε αναλύσεις και να εντοπίσετε την αιτία incidents.
  • Insights: Τα Insights παρέχουν analytics, performance metrics και actionable recommendations (όπως αυτά στο Application Insights ή VM Insights) για να βοηθήσουν στην παρακολούθηση και βελτιστοποίηση της υγείας και της αποδοτικότητας των εφαρμογών και της υποδομής σας.

Log Analytics Workspaces

Log Analytics workspaces είναι κεντρικά repositories στο Azure Monitor όπου μπορείτε να συλλέξετε, αναλύσετε, και οπτικοποιήσετε log και performance δεδομένα από τα Azure resources και τα on‑premises περιβάλλοντά σας. Εδώ είναι τα κύρια σημεία:

  • Centralized Data Storage: Λειτουργούν ως το κεντρικό σημείο για αποθήκευση diagnostic logs, performance metrics, και custom logs που παράγονται από τις εφαρμογές και τις υπηρεσίες σας.
  • Powerful Query Capabilities: Μπορείτε να τρέξετε queries χρησιμοποιώντας Kusto Query Language (KQL) για να αναλύσετε τα δεδομένα, να δημιουργήσετε insights και να αντιμετωπίσετε προβλήματα.
  • Integration with Monitoring Tools: Τα Log Analytics workspaces ενσωματώνονται με διάφορες Azure υπηρεσίες (όπως Azure Monitor, Azure Sentinel, και Application Insights) επιτρέποντάς σας να δημιουργήσετε dashboards, να ρυθμίσετε alerts και να αποκτήσετε μια συνολική εικόνα του περιβάλλοντός σας.

Συνοψίζοντας, ένα Log Analytics workspace είναι απαραίτητο για advanced monitoring, troubleshooting, και security analysis στο Azure.

Μπορείτε να ρυθμίσετε έναν resource να στέλνει δεδομένα σε ένα analytics workspace από τις diagnostic settings του resource.

Graph vs ARM logging visibility (useful for OPSEC/hunting)

  • Microsoft Graph Activity Logs δεν είναι ενεργοποιημένα by default. Ενεργοποιήστε και εξάγετέ τα (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 authentication (login.microsoftonline.) που χρησιμοποιείται από scripts/tools.
  • ARM control‑plane read/list (HTTP GET) operations γενικά δεν γράφονται στα Activity Logs. Η ορατότητα των read operations προέρχεται από resource 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 calls και token identifiers αλλά μπορεί να παραλείψει το UserAgent και έχει περιορισμένη default retention.

Όταν κάνετε hunting για AzureHound, συσχετίστε Entra sign‑in logs με Graph Activity Logs χρησιμοποιώντας session ID, IP, user/object IDs, και αναζητήστε bursts από Graph requests μαζί με ARM management calls που δεν καλύπτονται από 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

Αναφορές

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks